使用Nginx反向代理實現負載均衡

Nginx服務器在高併發時表現要比apache要強上n個級別

這裏使用了3臺機器作測試

首先需要大家區官方網站下載nginx和tomcat,以及給機器安裝jdk等 

這裏還要開放對應的機器端口: /sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT

查看是否添加成功: iptables -L -n

Nginx反向代理節點:192.168.227.133

tomcat節點1:192.168.227.132

tomcat節點2:192.168.227.131


安裝完nginx後,修改conf目錄下的nginx.conf文件,加入以下配置

<pre name="code" class="plain">upstream  www.lohocc.com{  
              server   192.168.227.132:8080;  
              server   192.168.227.131:8080;  
    }  
    server {  
        listen       80;
	#跟upstream的保持一致  
        server_name  www.lohocc.com;  
        charset utf-8;  
        location / {  
            root   html;  
            index  index.html index.htm;  
            proxy_pass        http://www.lohocc.com;  #跟upstream的保持一致
            proxy_set_header  X-Real-IP  $remote_addr;  
            client_max_body_size  100m;  
        }  
   location ~ ^/(WEB-INF)/ {   
        deny all;   
        }        
	error_page   500 502 503 504  /50x.html;  
        location = /50x.html {  
            root   html;  
        }  
  
    }  




然後重新啓動nginx服務器:XXX/nginx/sbin/nginx -s reload

也可以根據各個服務器的性能調整請求的權重/最大失敗數:weight=1 max_fails=2 fail_timeout=30s

下面來測試以下結果


當然這只是初級的部署搭建,主要的系統調優需要根據系統各方面的指標去進行


注意,使用負載均衡時需要注意Session的共享,可以使用memcache進行存放(實現一個自己的MemcacheSession,使用過濾器進行Session的創建等操作)


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章