NGINX_TOMCAT 负载均衡配置
2013-12-27 09:46
369 查看
此配置已在生产环境中运行。
软件:
Nginx-1.0.8
下载地址:http://nginx.org/download/nginx-1.0.8.tar.gz
apache-tomcat-6.0.18
下载地址:http://archive.apache.org/dist/tomcat/tomcat-6/v6.0.18/bin/apache-tomcat-6.0.18.tar.gz
jdk-6u27-linux-i586.bin
下载地址:http://download.oracle.com/auth/otn-pub/java/jdk/6u27-b07/jdk-6u27-linux-i586.bin?e=131891933
Pcre-8.00
下载地址:http://nchc.dl.sourceforge.net/project/pcre/pcre/8.00/pcre-8.00.tar.gz
Nginx-upstream-jvm-route-0.2
下载地址:http://nginx-upstream-jvm-route.googlecode.com/files/nginx-upstream-jvm-route-0.2.tar.gz
配置环境:
Nginx服务器地址:192.168.1.20
Apache_tomcat1服务器:192.168.1.21
Apache_tomcat2服务器:192.168.1.22
一:软件安装步骤
将所有软件包下载到:/usr/src路径
配置nginx服务器:
1:pcre-8.00编译安装
[root@mysql2 ~]#cd /usr/src/
[root@mysql2 src]#tar xf pcre-8.00.tar.gz
[root@mysql2 src]#cd pcre-8.00/
[root@mysql2pcre-8.00]# ./configure ;make;make install
2:nginx-1.0.8编译安装
[root@mysql2 src]#tar xf nginx-upstream-jvm-route-0.1.tar.gz
[root@mysql2 src]#tar xf nginx-1.0.8.tar.gz
[root@mysql2 src]#cd nginx-1.0.8/
[root@mysql2nginx-1.0.8]#patch -p0 </usr/src/nginx_upstream_jvm_route/jvm_route.patch
[root@mysql2nginx-1.0.8]# ./configure --prefix=/usr/local/nginx--with-pcre=/usr/src/pcre-8.00/ --with-http_stub_status_module--with-http_sub_module--add-module=/usr/src/nginx_upstream_jvm_route
# --with-pcre路径是指向pcre的源码文件目录
3:修改Nginx配置文件
[root@mysql2 ~]#cd /usr/local/nginx/conf/
[root@mysql2conf]# cpnginx.confnginx.conf.back
[root@mysql2conf]# vinginx.conf
user nginxnginx;
worker_processes2;以下是以服务器上有多少个cpu定的数字。(2cpu就定为2)
error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
pid logs/nginx.pid;
worker_rlimit_nofile65535;
events {
useepoll;
worker_connections 10240;
}
http {
includemime.types;
default_type application/octet-stream;
#log_format main '$remote_addr - $remote_user [$time_local] "$request" '
# '$status $body_bytes_sent"$http_referer" '
# '"$http_user_agent""$http_x_forwarded_for"';
#access_log logs/access.log main;
sendfile on;
tcp_nopush on;
server_names_hash_bucket_size128;
client_header_buffer_size32k;
large_client_header_buffers4 32k;
client_max_body_size8m;
#keepalive_timeout 0;
keepalive_timeout 60;
gzip on;
gzip_min_length1k;
gzip_buffers 416k;
gzip_http_version1.0;
gzip_comp_level 2;
gzip_types text/plain application/x-javascript text/cssapplication/xml;
gzip_vary on;
server_tokens off;
upstream backend
{
server192.168.1.21:8080 srun_id=tomcat1;
server192.168.1.22:8080 srun_id=tomcat2;
jvm_route$cookie_JSESSIONID|sessionid reverse;
}
server {
listen 192.168.1.20:80;
server_name web.cl.com;
charsetutf-8;
#access_log logs/host.access.log main;
location / {
root html;
index index.html index.htm index.jsp;
proxy_redirectoff;
proxy_set_headerHost $host;
proxy_set_headerX-Real-IP $remote_addr;
proxy_set_headerX-Forwarded-For $proxy_add_x_forwarded_for;
proxy_passhttp://backend;
}
location /status{
stub_status on;
access_log on;
auth_basic "status";
auth_basic_user_file/usr/local/nginx/htpasswd;
}
#error_page 404 /404.html;
# redirect server error pages tothe static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location =/50x.html {
root html;
}
# proxy the PHP scripts to Apachelistening on 127.0.0.1:80
#
#location ~ \.php$ {
# proxy_pass http://127.0.0.1;
#}
# pass the PHP scripts to FastCGIserver listening on 127.0.0.1:9000
#
#location ~ \.php$ {
# root html;
# fastcgi_pass 127.0.0.1:9000;
# fastcgi_indexindex.php;
# fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
# includefastcgi_params;
#}
# deny access to .htaccess files,if Apache's document root
# concurs with nginx's one
#
#location ~ /\.ht {
# deny all;
#}
}
# another virtual host using mix ofIP-, name-, and port-based configuration
#
#server {
# listen 8000;
# listen somename:8080;
# server_namesomename alias another.alias;
# location / {
# root html;
# index index.html index.htm;
# }
#}
# HTTPS server
#
#server {
# listen 443;
# server_namelocalhost;
# ssl on;
# ssl_certificatecert.pem;
# ssl_certificate_keycert.key;
# ssl_session_timeout 5m;
# ssl_protocols SSLv2 SSLv3 TLSv1;
# ssl_ciphers HIGH:!aNULL:!MD5;
# ssl_prefer_server_ciphers on;
# location / {
# root html;
# index index.html index.htm;
# }
log_format access '$remote_addr - $remote_user [$time_local] "$request" '
'$status$body_bytes_sent "$http_referer" '
'"$http_user_agent"$http_x_forwarded_for';
access_log /var/log/access.log access;
#}
}
添加用户:
[root@mysql2conf]# groupaddnginx
[root@mysql2conf]# useradd -g nginx -s /sbin/nologinnginx
添加查看Nginx服务状态的用户:
[root@mysql2 ~]# yum -y install httpd安装此服务需要借助一个命令
[root@mysql2 ~]#htpasswd -c /usr/local/nginx/htpasswdnginx
New password:
Re-type newpassword:
检查配置文件:
[root@mysql2 conf]# /usr/local/nginx/sbin/nginx -t
nginx: theconfiguration file /usr/local/nginx/conf/nginx.conf syntax is
ok
nginx:configuration file /usr/local/nginx/conf/nginx.conf test is
successful
看到以上两个结果就算配置是正确的。
启动服务:
[root@mysql2conf]# /usr/local/nginx/sbin/nginx
停止服务:
[root@mysql2conf]# /usr/local/nginx/sbin/nginx–s stop
也可以使用这个启动和停止的脚本:
[root@mysql2 conf]#vi /etc/init.d/nginx
#!/bin/sh
#
# description: Starts, stopsnginx
#
#chkconfig: 2345 20 80
#dscription: Startup scriptfor nginx webserver on CentOS. Place in /etc/init.d
#
# Author: Touya
set -e
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/nginx
DESC="nginxdaemon"
NAME=nginx
DAEMON=/usr/local/nginx/sbin/$NAME (定义nginx的安装目录)
CONFIGFILE=/usr/local/nginx/conf/nginx.conf
PIDFILE=/usr/local/nginx/logs/$NAME.pid
SCRIPTNAME=/etc/init.d/$NAME
# Gracefully exit if the package has been removed.
test -x $DAEMON || exit 0
d_start() {
echo "Starting $DESC: $NAME"
$DAEMON -c $CONFIGFILE || echo "already running"
}
d_stop() {
echo "Stopping $DESC: $NAME"
test -f $PIDFILE && kill -QUIT `cat $PIDFILE`
}
d_reload() {
echo "Reloading $DESC configuration…"
kill -HUP `cat $PIDFILE` || echo "can’t reload"
}
case "$1" in
'start')
d_start
echo "started."
;;
'stop')
d_stop
echo "stoped."
;;
'reload')
d_reload
echo "reloaded."
;;
'restart')
echo "Restarting $DESC: $NAME ..."
d_stop
# One second might not be time enough for a daemon tostop,
# if this happens, d_start will fail (and dpkg will breakif
# the package is being upgraded). Change the timeout ifneeded
# be, or change d_stop to have start-stop-daemon use--retry.
# Notice that using --retry slows down the shutdown processsomewhat.
sleep 3
d_start
echo "done."
;;
'list')
psauxf | egrep '(PID|nginx)' | grep -v grep
;;
'test')
$DAEMON -t -c $CONFIGFILE
;;
*)
echo "Usage: $SCRIPTNAME {reload|list|test|start|stop|restart}">&2
exit 3
;;
esac
exit 0
[root@mysql2conf]#chmod 755 /etc/init.d/nginx
[root@mysql2conf]# /etc/init.d/nginx start
[root@mysql2conf]# /etc/init.d/nginx stop
[root@mysql2conf]#chkconfig --add nginx #开机自启动
检查服务器端口是否启动:
[root@mysql2 conf]#lsof–i:80
查看服务状态:
http://192.168.1.20/nginx
Apache-tomcat服务器配置
1:jdk-6u27-linux-i586.bin安装
[root@webusr]# cd /usr/src/
[root@websrc]# ./jdk-6u27-linux-i586.bin
[root@websrc]# mvjdk1.6.0_27//usr/local/
[root@websrc]# vi /etc/profile
J***A_HOME=/usr/local/ jdk1.6.0_27
CLASSPATH=".:$J***A_HOME/lib/tools.jar:$J***A_HOME/lib/dt.jar"
PATH=$J***A_HOME/bin:$PATH
TOMCAT_HOME=/usr/local/tomcat
export J***A_HOME CLASSPATH PATH TOMCAT_HOME
使配置生效:
[root@websrc]# source /etc/profile
查看当前java版本号:
[root@websrc]# java -version
java version "1.6.0_27"
2:apache-tomcat-6.0.18安装
[root@websrc]#tar xf apache-tomcat-6.0.18.tar.gz
[root@websrc]# mv apache-tomcat-6.0.18/usr/local/tomcat1
[root@web tomcat]# cd/usr/local/tomcat/conf/
修改配置文件:
[root@webconf]#vi server.xml
<Engine name="Catalina"defaultHost="localhost" jvmRoute="tomcat1">
<Connector port="8009"maxThreads="500" minSpareThreads="30"maxSpareThreads="70" acceptCount="100"connectionTimeout="60000"protocol="AJP/1.3"redirectPort="8443" />
[root@webconf]# vi tomcat-users.xml
<?xml version='1.0'encoding='utf-8'?>
<tomcat-users>
<role rolename="manager"/>
<role rolename="admin"/>
<user username="admin"password="admin" roles="admin,manager"/>
</tomcat-users>
[root@webconf]# cd /usr/local/tomcat/bin/
[root@web bin]# vi catalina.sh
74 J***A_HOME=/usr/local/ jdk1.6.0_27
J***A_OPTS="-server-Xms256m -Xmx512m"
启动服务:
[root@web bin]#/usr/local/tomcat/bin/startup.sh
关闭服务:
[root@web bin]#/usr/local/tomcat/bin/shutdown.sh
检查服务端口:
[root@web bin]# lsof -i:8080
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
java 6414 root 29u IPv4 24953 TCP *:webcache (LISTEN)
在目录下建立测试页
[root@web ~]# mkdir/usr/local/tomcat/webapps/opps
[root@web ~]# vi/usr/local/tomcat/webapps/opps/mem.jsp
<%
Runtime lRuntime = Runtime.getRuntime();
out.println("*** BEGINMEMORY STATISTICS ***<br/>");
out.println("Free Memory:"+lRuntime.freeMemory()+"<br/>");
out.println("Max Memory:"+lRuntime.maxMemory()+"<br/>");
out.println("TotalMemory: "+lRuntime.totalMemory()+"<br/>");
out.println("AvailableProcessors : "+lRuntime.availableProcessors()+"<br/>");
out.println("*** ENDMEMORY STATISTICS ***");
%>
访问测试:
http://192.168.1.20/mem.jsp
能访问,证明配置成功。OK
在TOMCAT另一台服务器的配置步骤重复第一台的步骤就好了,在这里就不写出来了。
系统内核优化参数:(在三台上面添加)
[root@web bin]# /etc/sysctl.conf
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_window_scaling: = 1
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.ipv4.tcp_rmem = 4096 87380 16777216
net.ipv4.tcp_wmem = 4096 65536 16777216
net.ipv4.ip_local_port_range = 1024 65000
net.ipv4.icmp_echo_ignore_all = 1
net.ipv4.tcp_max_syn_backlog = 2048
net.ipv4.tcp_synack_retries = 3
net.ipv4.tcp_fin_timeout = 120
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_keepalive_time = 1200
使配置立即生效:
[root@web bin]# /sbin/sysctl -p
软件:
Nginx-1.0.8
下载地址:http://nginx.org/download/nginx-1.0.8.tar.gz
apache-tomcat-6.0.18
下载地址:http://archive.apache.org/dist/tomcat/tomcat-6/v6.0.18/bin/apache-tomcat-6.0.18.tar.gz
jdk-6u27-linux-i586.bin
下载地址:http://download.oracle.com/auth/otn-pub/java/jdk/6u27-b07/jdk-6u27-linux-i586.bin?e=131891933
Pcre-8.00
下载地址:http://nchc.dl.sourceforge.net/project/pcre/pcre/8.00/pcre-8.00.tar.gz
Nginx-upstream-jvm-route-0.2
下载地址:http://nginx-upstream-jvm-route.googlecode.com/files/nginx-upstream-jvm-route-0.2.tar.gz
配置环境:
Nginx服务器地址:192.168.1.20
Apache_tomcat1服务器:192.168.1.21
Apache_tomcat2服务器:192.168.1.22
一:软件安装步骤
将所有软件包下载到:/usr/src路径
配置nginx服务器:
1:pcre-8.00编译安装
[root@mysql2 ~]#cd /usr/src/
[root@mysql2 src]#tar xf pcre-8.00.tar.gz
[root@mysql2 src]#cd pcre-8.00/
[root@mysql2pcre-8.00]# ./configure ;make;make install
2:nginx-1.0.8编译安装
[root@mysql2 src]#tar xf nginx-upstream-jvm-route-0.1.tar.gz
[root@mysql2 src]#tar xf nginx-1.0.8.tar.gz
[root@mysql2 src]#cd nginx-1.0.8/
[root@mysql2nginx-1.0.8]#patch -p0 </usr/src/nginx_upstream_jvm_route/jvm_route.patch
[root@mysql2nginx-1.0.8]# ./configure --prefix=/usr/local/nginx--with-pcre=/usr/src/pcre-8.00/ --with-http_stub_status_module--with-http_sub_module--add-module=/usr/src/nginx_upstream_jvm_route
# --with-pcre路径是指向pcre的源码文件目录
3:修改Nginx配置文件
[root@mysql2 ~]#cd /usr/local/nginx/conf/
[root@mysql2conf]# cpnginx.confnginx.conf.back
[root@mysql2conf]# vinginx.conf
user nginxnginx;
worker_processes2;以下是以服务器上有多少个cpu定的数字。(2cpu就定为2)
worker_cpu_affinity 0010 0100;cpu的负载分配
error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
pid logs/nginx.pid;
worker_rlimit_nofile65535;
events {
useepoll;
worker_connections 10240;
}
http {
includemime.types;
default_type application/octet-stream;
#log_format main '$remote_addr - $remote_user [$time_local] "$request" '
# '$status $body_bytes_sent"$http_referer" '
# '"$http_user_agent""$http_x_forwarded_for"';
#access_log logs/access.log main;
sendfile on;
tcp_nopush on;
server_names_hash_bucket_size128;
client_header_buffer_size32k;
large_client_header_buffers4 32k;
client_max_body_size8m;
#keepalive_timeout 0;
keepalive_timeout 60;
gzip on;
gzip_min_length1k;
gzip_buffers 416k;
gzip_http_version1.0;
gzip_comp_level 2;
gzip_types text/plain application/x-javascript text/cssapplication/xml;
gzip_vary on;
server_tokens off;
upstream backend
{
server192.168.1.21:8080 srun_id=tomcat1;
server192.168.1.22:8080 srun_id=tomcat2;
jvm_route$cookie_JSESSIONID|sessionid reverse;
}
server {
listen 192.168.1.20:80;
server_name web.cl.com;
charsetutf-8;
#access_log logs/host.access.log main;
location / {
root html;
index index.html index.htm index.jsp;
proxy_redirectoff;
proxy_set_headerHost $host;
proxy_set_headerX-Real-IP $remote_addr;
proxy_set_headerX-Forwarded-For $proxy_add_x_forwarded_for;
proxy_passhttp://backend;
}
location /status{
stub_status on;
access_log on;
auth_basic "status";
auth_basic_user_file/usr/local/nginx/htpasswd;
}
#error_page 404 /404.html;
# redirect server error pages tothe static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location =/50x.html {
root html;
}
# proxy the PHP scripts to Apachelistening on 127.0.0.1:80
#
#location ~ \.php$ {
# proxy_pass http://127.0.0.1;
#}
# pass the PHP scripts to FastCGIserver listening on 127.0.0.1:9000
#
#location ~ \.php$ {
# root html;
# fastcgi_pass 127.0.0.1:9000;
# fastcgi_indexindex.php;
# fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
# includefastcgi_params;
#}
# deny access to .htaccess files,if Apache's document root
# concurs with nginx's one
#
#location ~ /\.ht {
# deny all;
#}
}
# another virtual host using mix ofIP-, name-, and port-based configuration
#
#server {
# listen 8000;
# listen somename:8080;
# server_namesomename alias another.alias;
# location / {
# root html;
# index index.html index.htm;
# }
#}
# HTTPS server
#
#server {
# listen 443;
# server_namelocalhost;
# ssl on;
# ssl_certificatecert.pem;
# ssl_certificate_keycert.key;
# ssl_session_timeout 5m;
# ssl_protocols SSLv2 SSLv3 TLSv1;
# ssl_ciphers HIGH:!aNULL:!MD5;
# ssl_prefer_server_ciphers on;
# location / {
# root html;
# index index.html index.htm;
# }
log_format access '$remote_addr - $remote_user [$time_local] "$request" '
'$status$body_bytes_sent "$http_referer" '
'"$http_user_agent"$http_x_forwarded_for';
access_log /var/log/access.log access;
#}
}
添加用户:
[root@mysql2conf]# groupaddnginx
[root@mysql2conf]# useradd -g nginx -s /sbin/nologinnginx
添加查看Nginx服务状态的用户:
[root@mysql2 ~]# yum -y install httpd安装此服务需要借助一个命令
[root@mysql2 ~]#htpasswd -c /usr/local/nginx/htpasswdnginx
New password:
Re-type newpassword:
检查配置文件:
[root@mysql2 conf]# /usr/local/nginx/sbin/nginx -t
nginx: theconfiguration file /usr/local/nginx/conf/nginx.conf syntax is
ok
nginx:configuration file /usr/local/nginx/conf/nginx.conf test is
successful
看到以上两个结果就算配置是正确的。
启动服务:
[root@mysql2conf]# /usr/local/nginx/sbin/nginx
停止服务:
[root@mysql2conf]# /usr/local/nginx/sbin/nginx–s stop
也可以使用这个启动和停止的脚本:
[root@mysql2 conf]#vi /etc/init.d/nginx
#!/bin/sh
#
# description: Starts, stopsnginx
#
#chkconfig: 2345 20 80
#dscription: Startup scriptfor nginx webserver on CentOS. Place in /etc/init.d
#
# Author: Touya
set -e
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/nginx
DESC="nginxdaemon"
NAME=nginx
DAEMON=/usr/local/nginx/sbin/$NAME (定义nginx的安装目录)
CONFIGFILE=/usr/local/nginx/conf/nginx.conf
PIDFILE=/usr/local/nginx/logs/$NAME.pid
SCRIPTNAME=/etc/init.d/$NAME
# Gracefully exit if the package has been removed.
test -x $DAEMON || exit 0
d_start() {
echo "Starting $DESC: $NAME"
$DAEMON -c $CONFIGFILE || echo "already running"
}
d_stop() {
echo "Stopping $DESC: $NAME"
test -f $PIDFILE && kill -QUIT `cat $PIDFILE`
}
d_reload() {
echo "Reloading $DESC configuration…"
kill -HUP `cat $PIDFILE` || echo "can’t reload"
}
case "$1" in
'start')
d_start
echo "started."
;;
'stop')
d_stop
echo "stoped."
;;
'reload')
d_reload
echo "reloaded."
;;
'restart')
echo "Restarting $DESC: $NAME ..."
d_stop
# One second might not be time enough for a daemon tostop,
# if this happens, d_start will fail (and dpkg will breakif
# the package is being upgraded). Change the timeout ifneeded
# be, or change d_stop to have start-stop-daemon use--retry.
# Notice that using --retry slows down the shutdown processsomewhat.
sleep 3
d_start
echo "done."
;;
'list')
psauxf | egrep '(PID|nginx)' | grep -v grep
;;
'test')
$DAEMON -t -c $CONFIGFILE
;;
*)
echo "Usage: $SCRIPTNAME {reload|list|test|start|stop|restart}">&2
exit 3
;;
esac
exit 0
[root@mysql2conf]#chmod 755 /etc/init.d/nginx
[root@mysql2conf]# /etc/init.d/nginx start
[root@mysql2conf]# /etc/init.d/nginx stop
[root@mysql2conf]#chkconfig --add nginx #开机自启动
检查服务器端口是否启动:
[root@mysql2 conf]#lsof–i:80
查看服务状态:
http://192.168.1.20/nginx
Apache-tomcat服务器配置
1:jdk-6u27-linux-i586.bin安装
[root@webusr]# cd /usr/src/
[root@websrc]# ./jdk-6u27-linux-i586.bin
[root@websrc]# mvjdk1.6.0_27//usr/local/
[root@websrc]# vi /etc/profile
J***A_HOME=/usr/local/ jdk1.6.0_27
CLASSPATH=".:$J***A_HOME/lib/tools.jar:$J***A_HOME/lib/dt.jar"
PATH=$J***A_HOME/bin:$PATH
TOMCAT_HOME=/usr/local/tomcat
export J***A_HOME CLASSPATH PATH TOMCAT_HOME
使配置生效:
[root@websrc]# source /etc/profile
查看当前java版本号:
[root@websrc]# java -version
java version "1.6.0_27"
2:apache-tomcat-6.0.18安装
[root@websrc]#tar xf apache-tomcat-6.0.18.tar.gz
[root@websrc]# mv apache-tomcat-6.0.18/usr/local/tomcat1
[root@web tomcat]# cd/usr/local/tomcat/conf/
修改配置文件:
[root@webconf]#vi server.xml
<Engine name="Catalina"defaultHost="localhost" jvmRoute="tomcat1">
<Connector port="8009"maxThreads="500" minSpareThreads="30"maxSpareThreads="70" acceptCount="100"connectionTimeout="60000"protocol="AJP/1.3"redirectPort="8443" />
[root@webconf]# vi tomcat-users.xml
<?xml version='1.0'encoding='utf-8'?>
<tomcat-users>
<role rolename="manager"/>
<role rolename="admin"/>
<user username="admin"password="admin" roles="admin,manager"/>
</tomcat-users>
[root@webconf]# cd /usr/local/tomcat/bin/
[root@web bin]# vi catalina.sh
74 J***A_HOME=/usr/local/ jdk1.6.0_27
J***A_OPTS="-server-Xms256m -Xmx512m"
启动服务:
[root@web bin]#/usr/local/tomcat/bin/startup.sh
关闭服务:
[root@web bin]#/usr/local/tomcat/bin/shutdown.sh
检查服务端口:
[root@web bin]# lsof -i:8080
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
java 6414 root 29u IPv4 24953 TCP *:webcache (LISTEN)
在目录下建立测试页
[root@web ~]# mkdir/usr/local/tomcat/webapps/opps
[root@web ~]# vi/usr/local/tomcat/webapps/opps/mem.jsp
<%
Runtime lRuntime = Runtime.getRuntime();
out.println("*** BEGINMEMORY STATISTICS ***<br/>");
out.println("Free Memory:"+lRuntime.freeMemory()+"<br/>");
out.println("Max Memory:"+lRuntime.maxMemory()+"<br/>");
out.println("TotalMemory: "+lRuntime.totalMemory()+"<br/>");
out.println("AvailableProcessors : "+lRuntime.availableProcessors()+"<br/>");
out.println("*** ENDMEMORY STATISTICS ***");
%>
访问测试:
http://192.168.1.20/mem.jsp
能访问,证明配置成功。OK
在TOMCAT另一台服务器的配置步骤重复第一台的步骤就好了,在这里就不写出来了。
系统内核优化参数:(在三台上面添加)
[root@web bin]# /etc/sysctl.conf
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_window_scaling: = 1
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.ipv4.tcp_rmem = 4096 87380 16777216
net.ipv4.tcp_wmem = 4096 65536 16777216
net.ipv4.ip_local_port_range = 1024 65000
net.ipv4.icmp_echo_ignore_all = 1
net.ipv4.tcp_max_syn_backlog = 2048
net.ipv4.tcp_synack_retries = 3
net.ipv4.tcp_fin_timeout = 120
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_keepalive_time = 1200
使配置立即生效:
[root@web bin]# /sbin/sysctl -p
相关文章推荐
- nginx配置2个tomcat做负载均衡
- nginx 配置多域名 及 tomcat 负载均衡 二
- nginx+tomcat配置集群负载均衡
- windows 下 Nginx + tomcat 负载均衡配置
- Linux下配置Nginx与Tomcat负载均衡及反代理
- tomcat集群配置session,并用nginx做反向代理和负载均衡
- nginx+tomcat 负载均衡配置
- nginx tomcat 集群与负载均衡配置实例
- 图文解说:Nginx + tomcat配置集群负载均衡
- Nginx+tomcat配置集群负载均衡
- tomcat+nginx配置集群负载均衡
- Nginx+tomcat配置集群负载均衡
- nginx+tomcat+redis 负载均衡配置
- 图文解说:Nginx+tomcat配置集群负载均衡
- windows下配置nginx和tomcat负载均衡(三)
- 初识Nginx,简单配置实现负载均衡(ubuntu + Nginx + tomcat)
- Tomcat集群,Nginx集群,Tomcat+Nginx 负载均衡配置,Tomcat+Nginx集群
- 配置多个tomcat服务,并用nginx做负载均衡
- nginx+tomcat 配置负载均衡
- Nginx+tomcat配置集群负载均衡