Nginx動態反向代理1


1.在nginx.con里配置

upstream backend_server{
    server 172.31.49.158 weight=1;//分別配權重為1
     server 172.31.49.118 weight=1;
}   
//在server里加上
location / {
  proxy_pass http://backend_server;
  proxy_set_header Host $http_host:$proxy_port;
  proxy_set_header X-Real-IP $remote_addr;
  proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}

2.sbin/nginx -s reload  無縫重啟一下

cd logs/ 

tail -f error.log     看一下有沒有報錯

3.在本地網頁訪問網頁看是否鏈接成功,驗證是否真的訪問到主機了,到miaosher1服務器上,

開啟tomcat的內嵌log

 

 參數解釋:%h:遠端的host是什么 ip地址

      %l:

      %u:遠端主機的user

      %t:處理時長

      %r:對應的http請求的第一行,請求的url(非常關鍵)

      %s:http的返回狀態碼,比如200,404

      %b:對應請求response的大小

      %d:對應處理請求的時長

 

之后kill掉tomcat的端口,然后./deploy.sh &

 

 

8.把數據庫那台機子的帶寬峰值升級到20mbps

因為在局域網里miaoshaserver和數據庫的通信有通信消耗,但是用到druid的連接池上建連和斷連基本上是不太會發生的,因為一直保持長鏈接的狀態,這種毫秒級別的消耗完全是可以忍受的,

但是nginx和miaoshaserver是短連接的狀態,默認配置里是沒有keepalive的,那么我們現在把它改成有keepalive的,

添加一個30s的長鏈接

因為nginx里默認和miaoshaserver服務器的連接是遵循http1.0的協議,是沒有長鏈接的,所以還要手動添加:

 

上圖添加的兩條意思就是:修改成1.1的版本,若請求頭默認為空,那么就會啟用長鏈接,然后sbin/nginx -s reload 

通過壓力測試,使用命令不斷來查看是否端口有改變,若沒有改變就說明長鏈接開啟了:

net stat -an |grep 172.31.49.159 | grep ESTABLISH

9.通過nginx的反向代理以后,性能提升很明顯,原來的tps只有300左右,現在可以飆升到1600,並且平均耗時子300多毫秒。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM