Nginx動態反向代理1

1.在nginx.con裏配置nginx

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/ tomcat

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

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

開啓tomcat的內嵌log測試

 

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

      %l:url

      %u:遠端主機的userspa

      %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多毫秒。

相關文章
相關標籤/搜索