五、nginx 配置例項-負載均衡
阿新 • • 發佈:2020-12-21
-
首先準備兩個同時啟動的 Tomcat windows和linux上隔一個tomcat,兩臺 tomcat 裡面 webapps 目錄中,建立名稱是 c 資料夾,在 c資料夾中建立 頁面 c.html,確保能直接通過訪問tomcat訪問到。
- 在 nginx.conf 中進行配置
http { ......... upstream myserver{ server 192.168.116.131:8080 server192.168.116.1:8080; } server { listen 9991; server_name ng; location / { proxy_pass http://myserver; proxy_connect_timeout 10; } } }
隨著網際網路資訊的爆炸性增長,負載均衡(load balance)已經不再是一個很陌生的話題, 顧名思義,負載均衡即是將負載分攤到不同的服務單元,既保證服務的可用性,又保證響應 足夠快,給使用者很好的體驗。快速增長的訪問量和資料流量催生了各式各樣的負載均衡產品, 很多專業的負載均衡硬體提供了很好的功能,但卻價格不菲,這使得負載均衡軟體大受歡迎, nginx 就是其中的一個,在 linux 下有 Nginx、LVS、Haproxy 等等服務可以提供負載均衡服 務,而且 Nginx 提供了4種分配伺服器策略。
5.2、Nginx分配伺服器策略。
(1)、輪詢(預設)
每個請求按時間順序逐一分配到不同的後端伺服器,如果後端伺服器 down 掉,能自動剔除。
(2)、weight
weight 代表權,重預設為1,權重越高被分配的客戶端越多
指定輪詢機率,weight 和訪問比率成正比,用於後端伺服器效能不均的情況。 例如:
upstream myserver{ server 192.168.116.131:8080 weight=1; server 192.168.116.1:8080 weight=1; }
(3)、ip_hash
每個請求按訪問 ip 的 hash 結果分配,這樣每個訪客固定訪問一個後端伺服器,可以解決 session 的問題。例如:
upstream myserver{ ip_hash; server 192.168.116.131:8080; server 192.168.116.1:8080; }
(4)、fair(第三方)
按後端伺服器的響應時間來分配請求,響應時間短的優先分配。
upstream myserver{ fair; server 192.168.116.131:8080; server 192.168.116.1:8080; }