這篇文章給大家分享的內容是關於Nginx和php安裝及配置七之nginx負載平衡的5種策略,有著一定的參考價值,有需要的朋友可以參考一下
nginx可以依照客戶端IP進行負載平衡,在upstream裡設定ip_hash,就可以針對同一個C類位址段中的客戶端選擇同一個後端伺服器,除非那個後端伺服器宕了才會換一個。
nginx的upstream目前支援的5種方式的分配
1、輪詢(預設)
每個請求依時間順序逐一分配到不同的後端伺服器,如果後端伺服器down掉,能自動剔除。
upstream backserver {
server 192.168.0.14;
# server 192.168.0.15;
#}
##1指定權重
指定輪詢幾率,weight和存取比率成正比,用於後端伺服器效能不均的情況。
upstream backserver {
server 192.168.0.14 weight=10;
server 192.168.0.15 weight=10;
#}
#################################################################################'3# #####、IP###綁定ip_hash###############每個請求按訪問ip###的hash結果分配,這樣每個訪客固定訪問一個後端伺服器,可以解決session的問題。 ############upstream backserver { ################ip_hash; ################server 192.168. 0.14:88; ###############server 192.168.0.15:80; ###############} ######## #############4######、fair###(第三方)###############以後端伺服器的回應時間來分配請求,回應時間短的優先分配。 ###############upstream backserver { ###############server server1; ######################################################################################################################### #server server2; ###############fair; ################} ################################################################################################################################################################################################################################################ ########5######、url_hash###(第三方)################按訪問url###的hash結果來分配請求,使每個url定向到同一個後端伺服器,後端伺服器為快取時比較有效。 ############upstream backserver { ################server squid1:3128; ########################################################################### server squid2:3128; ###############hash $request_uri; ###############hash_method crc32; ##############hash_method crc32; ######### #######} ##################在需要使用負載平衡的server####################################################################### ###proxy_pass http://backserver/; ##############upstream backserver{ ###############ip_hash; #### ###########server 127.0.0.1:9090 down; (down ######表示單前的server###暫時不參與負載) #########server 127.0.0.1:8080 weight=2; (weight 預設為1.weight越大,負載的權重就越大)
#server 127.0.0.1:6060;
server 127.0.0.1:7070 backup; (它它所有的非backup 機器down或忙碌的時候,請求backup機器)
##}
max_fails #:允許請求失敗的次數預設為1.當超過最大次數時,返回proxy_next_upstream 模組定義的錯誤
#次失敗後,暫停的時間參考文章:
http://www.cnblogs.com/andashu/p/6377323.html
http: //blog.csdn.net/xiajun07061225/article/details/9318871
相關推薦:
Nginx和php安裝及設定六之Nginx反向代理與負載平衡部署指南Nginx和php安裝及設定五之LINUX用PHPIZE安裝PHP GD擴充Nginx和php安裝及設定四之nginx及php啟動或重啟以上是Nginx和php安裝及設定七之nginx負載平衡的5種策略的詳細內容。更多資訊請關注PHP中文網其他相關文章!