NGINX負載均衡分發請求的幾種方式
阿新 • • 發佈:2019-01-27
1、輪詢(預設)每個請求按時間順序逐一分配到不同的後端伺服器,如果後端伺服器down掉,能自動剔除。
2、weight
指定輪詢機率,weight和訪問比率成正比,用於後端伺服器效能不均的情況。
3、ip_hash
每個請求按訪問ip的hash結果分配,這樣每個訪客固定訪問一個後端伺服器,可以解決session的問題。
4、fair(第三方)按後端伺服器的響應時間來分配請求,響應時間短的優先分配。
5、url_hash(第三方)按訪問url的hash結果來分配請求,使每個url定向到同一個後端伺服器,後端伺服器為快取時比較有效。
例項
upstream www.test1.com { ip_hash; server 172.16.125.76:8066 weight=10; server 172.16.125.76:8077 down; server 172.16.0.18:8066 max_fails=3 fail_timeout=30s; server 172.16.0.18:8077 backup; }
根據伺服器的本身的效能差別及職能,可以設定不同的引數控制。
down 表示負載過重或者不參與負載
weight 權重過大代表承擔的負載就越大
backup 其它伺服器時或down時才會請求backup伺服器
max_fails 失敗超過指定次數會暫停或請求轉往其它伺服器
fail_timeout 失敗超過指定次數後暫停時間
以上就Nginx的負載均衡的簡單配置。那繼續我們的本節討論內容: