Session問題
文件上傳下載
凡是辦理處事器負載問題,城市通過多處事器分載來辦理。常見的辦理方案有:
網站進口通過度站鏈接負載(天空軟件站,華軍軟件園等)
DNS輪詢
F5物理設備
Nginx等輕量級架構
那我們看看Nginx是如何實現負載平衡的,Nginx的upstream今朝支持以下幾種方法的分派
1、輪詢(默認)
每個請求定時間順序逐一分派到差異的后端處事器,假如后端處事器down掉,能自動剔除。
2、weight
指定輪詢幾率,weight和會見比率成正比,用于后端處事器機能不均的環境。
2、ip_hash
每個請求按會見ip的hash功效分派,這樣每個訪客牢靠會見一個后端處事器,可以辦理session的問題。
3、fair(第三方)
按后端處事器的響應時間來分派請求,響應時間短的優先分派。
4、url_hash(第三方)
按會見url的hash功效來分派請求,使每個url定向到同一個后端處事器,后端處事器為緩存時較量有效。
Upstream設置如何實現負載
http {
upstream www.test1.com {
ip_hash;
server
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;
}
upstream www.test2.com {
server
server 192.168.76.98:8066;
}
server {
listen
server_name www.test1.com;
location
/{proxy_pass http://www.test1.com;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
server {
listen
server_name www.test2.com;
location
/{proxy_pass http://www.test2.com;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
當有請求到www.test1.com/www.test2.com 時請求會被分發到對應的upstream配置的處事器列表上。test2的每一次請求分發的處事器都是隨機的,就是第一種環境羅列的。而test1剛是按照來會見ip的hashid來分發到指定的處事器,香港服務器 香港服務器租用,也就是說該IP的請求都是轉到這個指定的處事器上。
按照處事器的自己的機能不同及職能,可以配置差異的參數節制。
down 暗示負載過重可能不參加負載
weight 權重過大代表包袱的負載就越大
backup 其它處事器時或down時才會請求backup處事器
max_fails 失敗高出指定次數會暫停或請求轉往其它處事器
fail_timeout 失敗高出指定次數后暫停時間
以上就Nginx的負載平衡的簡樸設置。那繼承我們的本節接頭內容: