nginx + tomcat 集群记录

昨天晚写的时候已经下班了、时间紧迫、写的略简!

昨天说过、接到部署的任务之后、首先想到的是apache httpserver 毕竟pache、我们接触的比较多!然而部署之后遇到了很多问题、比如apache并发访问在500左右的时候就会崩溃、而我确实是进行过优化的!下面是apache的简单优化:首先我们要确认一下apache的工作模式,我启动apache!命令进入apache的安装目录打印命令如图

可以看到在我的电脑上 采用的是 mpm_winnt 工作模式!去apache 安装目录找到conf/httpd.conf 启用 mpm.conf  默认是注释的!昨天tomcat+apache部署的时候已经讲过:打开mpm.conf配置文件,找到如下一段代码:

# WinNT MPM
# ThreadsPerChild: constant number of worker threads in the server process
# MaxRequestsPerChild: maximum  number of requests a server process serves
<IfModule mpm_winnt_module>
    ThreadsPerChild      2000
    MaxRequestsPerChild    10000
</IfModule>

  这里面有两个参数    

  1. threadsperchild     理解意思是    子进程的线程数!
  2. maxrequestsperchild     子进程的最大请求数  

我按如上图设置、不知道为什么总是达不到并发要求!   然后我就去看官方文档、发现apache windows版本非常少、且都32位.为保个安心  我转而研究nginx!

软件:nginx 1.80    tomcat7   jre7

一、首先查阅文档、他人经验!然后我就有点不好的预感、官方文档对windows下部署有这样一句提示:version of nginx for windows,only the select() connection processing method is currentl used ,so high performance and scalability shoud be not expected!    但是我又想:nginx 5W 50W都不在话下了 我只要3000而以 该是对它无压力吧!

二、安装  配置nginx.conf  一共配置了3处、nginx 入手简单!

    upstream  localhost{  
              server   192.168.0.59:8081;  
              server   192.168.0.129:8081;
              ip_hash;
    }  
worker_processes  8;


#pid        logs/nginx.pid;


events {
    worker_connections  38000;
}
        location / {
           # root   html;
           # index  index.html index.htm;
            proxy_pass http://localhost; 
            proxy_redirect          off;
            
            proxy_set_header Host $host; 
            proxy_set_header X-Real-IP $remote_addr; 
            proxy_set_header REMOTE-HOST $remote_addr; 
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
            client_max_body_size 50m; 
            client_body_buffer_size 256k; 
            proxy_connect_timeout 1; 
            proxy_send_timeout 30; 
            proxy_read_timeout 60; 
            proxy_buffer_size 256k; 
            proxy_buffers 4 256k; 
            proxy_busy_buffers_size 256k; 
            proxy_temp_file_write_size 256k; 
            proxy_next_upstream error timeout invalid_header http_500 http_503 http_404; 
            proxy_max_temp_file_size 128m; 
        }

三、一样配置tomcat

四、启动测试   session采用 id-hash  没有问题、然而并发是个悲剧!

                                                                                                                                                                                                                                                                                                       

原文地址:https://www.cnblogs.com/vitre/p/5166008.html