Linux下Nginx+多Tomcat负载均衡实现详解(4)

[root@N+T bin]# ps -ef |grep tomcat root 1278 1 0 13:50 ? 00:00:10 /usr/java/jdk1.7.0_79/bin/java -Djava.util.logging.config.file=/usr/tomcatG/tomcat7/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.endorsed.dirs=/usr/tomcatG/tomcat7/endorsed -classpath /usr/tomcatG/tomcat7/bin/bootstrap.jar:/usr/tomcatG/tomcat7/bin/tomcat-juli.jar -Dcatalina.base=/usr/tomcatG/tomcat7 -Dcatalina.home=/usr/tomcatG/tomcat7 -Djava.io.tmpdir=/usr/tomcatG/tomcat7/temp org.apache.catalina.startup.Bootstrap start start root 1287 1 0 13:50 ? 00:00:13 /usr/java/jdk1.7.0_79/bin/java -Djava.util.logging.config.file=/usr/tomcatG/tomcat8/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -classpath /usr/tomcatG/tomcat8/bin/bootstrap.jar:/usr/tomcatG/tomcat8/bin/tomcat-juli.jar -Dcatalina.base=/usr/tomcatG/tomcat8 -Dcatalina.home=/usr/tomcatG/tomcat8 -Djava.io.tmpdir=/usr/tomcatG/tomcat8/temp org.apache.catalina.startup.Bootstrap start start root 1301 1 0 13:50 ? 00:00:08 /usr/java/jdk1.7.0_79/jre/bin/java -Djava.util.logging.config.file=/usr/tomcatG/tomcat6//conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.endorsed.dirs=/usr/tomcatG/tomcat6//endorsed -classpath /usr/tomcatG/tomcat6//bin/bootstrap.jar -Dcatalina.base=/usr/tomcatG/tomcat6/ -Dcatalina.home=/usr/tomcatG/tomcat6/ -Djava.io.tmpdir=/usr/tomcatG/tomcat6//temp org.apache.catalina.startup.Bootstrap start root 1509 1418 0 15:02 pts/0 00:00:00 grep --color tomcat [root@N+T bin]#

可以看到,各个端口以及运行的变量环境(jdk)这个排版比较长,需要往后面拉取才能看到所有内容。

3.4 配置负载均衡

在nginx里面添加几条代码即可,下面请看

#####nginx+3 T 负载均衡测试############ user nobody; worker_processes 1; events { use epoll; worker_connections 1024; } http { include mime.types; default_type application/octet-stream; sendfile on; keepalive_timeout 60; fastcgi_connect_timeout 300; fastcgi_send_timeout 300; fastcgi_read_timeout 300; fastcgi_buffer_size 64k; fastcgi_buffers 8 128k; fastcgi_busy_buffers_size 128k; fastcgi_temp_file_write_size 128k; fastcgi_temp_path /dev/shm; upstream li7105.com { #在此插入 server 127.0.0.1:18080 weight=1; #tomcat6分流 weight=1 这是权重分配。 server 127.0.0.1:28080 weight=2; #tomcat7分流 weight=2 显然2更大,那么它被分配任务的几率也就更大 server 127.0.0.1:8088 weight=2; #tomcat8分流 } server{ listen 80; server_name localhost; access_log /var/log/nginx/aeecss.log; error_log /var/log/nginx/error.log; location / { proxy_pass http://li7105.com; proxy_redirect default; } } }

 【关于nginx的负载均衡的分配方式】

nginx关于这个负载均衡方面的权重分配方式有4种:

1.轮询,默认采取此方式,Nginx会按照请求时间的先后顺序进行轮询分发,若某台Web Server宕机,Nginx自动将其摘掉。

2.weight,权重,即轮询的几率,值越大,被分发的可能性越大,用于后端服务器性能不均的情况。

3.ip_hash,每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后端服务器,可以解决共享session的问题。

4.自定义规则

PS:     

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/e883d51d56d2b4d9e8bb098ab4708094.html