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