1 輪詢(默認)
每個請求按時間順序逐一分配到不同的後端服務器,如果後端服務器down掉,能自動剔除。
2 weight
指定輪詢機率,weight和訪問比率成正比,用於後端服務器性能不均的情況。
例如:
upstream bakend { server 192.168.0.88 weight=10; server 192.168.0.89 weight=10; }
3 ip_hash
每個請求按訪問ip的hash結果分配,這樣每個訪客固定訪問一個後端服務器,可以
解決session的問題。
例如:
upstream bakend { ip_hash; server 192.168.0.88:80; server 192.168.0.89:80; }
4 fair(第三方)
按後端服務器的響應時間來分配請求,響應時間短的優先分配。
例如:
upstream bakend { server 192.168.0.88:80; server 192.168.0.89:80; fair; }
5 url_hash(第三方)
按訪問url的hash結果來分配請求,使每個url定向到同一個後端服務器,後端服務
器爲緩存時比較有效。
例如:
upstream backend { server 192.168.0.88:3128; server 192.168.0.89:3128; hash $request_uri; hash_method crc32; }