Nginx常用負載均衡策略
輪詢(默認)
注意:這里的輪詢并不是每個請求輪流分配到不同的后端服務器,與ip_hash類似,但是按照訪問url的hash結果來分配請求,使得每個url定向到同一個后端服務器,主要應用于后端服務器為緩存時的場景下。如果后端服務器down掉,將自動剔除
upstream backserver {
???? server 127.0.0.1:8080;
???? server 127.0.0.1:9090;
}
權重
每個請求按一定比例分發到不同的后端服務器,weight值越大訪問的比例越大,用于后端服務器性能不均的情況
upstream backserver {
???? server 192.168.0.14 weight=5;
???? server 192.168.0.15 weight=2;
}
ip_hash
ip_hash也叫IP綁定,每個請求按訪問ip的hash值分配,這樣每個訪問客戶端會固定訪問一個后端服務器,可以解決會話Session丟失的問題
算法:hash("124.207.55.82") % 2 = 0, 1
upstream backserver {
???? ip_hash;
???? server 127.0.0.1:8080;
???? server 127.0.0.1:9090;
}
最少連接
web請求會被轉發到連接數最少的服務器上
upstream backserver {
???? least_conn;
???? server 127.0.0.1:8080;
???? server 127.0.0.1:9090;
}