每次修改完nginx.conf都得重新啟動nginx,
1.輪詢(默認)
注意:這里的輪詢并不是每個請求輪流分配到不同的后端服務器,與ip_hash類似,但是按照訪問url的hash結果來分配請求,使得每個url定向到同一個后端服務器,主要應用于后端服務器為快取時的場景下,如果后端服務器down掉,將自動剔除
upstream backserver {
server 127.0.0.1:8080;
server 127.0.0.1:8081;
}
2.權重
每個請求按一定比例分發到不同的后端服務器,weight值越大訪問的比例越大,用于后端服務器性能不均的情況(下面這個是7次請求隨機5次分配到埠為8080的tomcat,2次到埠8081的tomcat)
upstream backserver {
server 127.0.0.1:8080 weight=5;
server 127.0.0.1:8081 weight=2;
}
3.ip_hash
ip_hash也叫IP系結,每個請求按訪問ip的hash值分配,這樣每個訪問客戶端會固定訪問一個后端服務器,可以解決會話Session丟失的問題(這樣雖然能夠解決session問題但是ip_hash不是使用cookie在服務端和客戶端傳遞sessionID,另外如果訪問的結果全是1那么也會造成服務器壓力大,springSession來解決這個問題)
如圖

演算法:hash("124.207.55.82") % 2 = 0或1
upstream backserver {
ip_hash;
server 127.0.0.1:8080;
server 127.0.0.1:8081;
}
4.最少連接
web請求會被轉發到連接數最少的服務器上
upstream backserver {
least_conn;
server 127.0.0.1:8080;
server 127.0.0.1:8081;
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/292673.html
標籤:其他
