1、輪詢(預設方式)
每個請求按時間順序逐一分配到不同的後端伺服器,如果後端伺服器掛掉,能自動剔除。
2、weight(權重)
指定輪詢機率,weight和訪問比率成正比,用於後端伺服器效能不均的情況。
例如:upstream bakend
注:以上的配置就是說請求進入的兩台伺服器的機率是一樣的,都為10。伺服器配置的weight(權重)越高,請求進入那台伺服器處理的機率也就越高。
2、ip_hash
每個請求按訪問ip的hash結果分配,這樣每個訪客固定訪問乙個後端伺服器,可以解決session的問題。
例如:upstream bakend
注:乙個ip請求就會有乙個固定的伺服器,這樣就不會有共享session的問題。
3、fair(第三方)
按後端伺服器的響應時間來分配請求,響應時間短的優先分配。
upstream backend
4、url_hash(第三方)
按訪問url的hash結果來分配請求,使每個url定向到同乙個後端伺服器,後端伺服器為快取時比較有效。
例:在upstream中加入hash語句,server語句中不能寫入weight等其他的引數,hash_method是使用的hash演算法
upstream backend
例項:upstream bakend
在需要使用負載均衡的server中增加
每個裝置的狀態設定為:
1.down表示單前的server暫時不參與負載
2.weight為weight越大,負載的權重就越大。
3.max_fails:允許請求失敗的次數預設為1.當超過最大次數時,返回proxy_next_upstream模組定義的錯誤
4.fail_timeout:max_fails次失敗後,暫停的時間。
5.backup: 其它所有的非backup機器down或者忙的時候,請求backup機器。所以這台機器壓力會最輕。
nginx支援同時設定多組的負載均衡,用來給不用的server來使用。
client_body_in_file_only設定為on 可以講client post過來的資料記錄到檔案中用來做debug
client_body_temp_path設定記錄檔案的目錄 可以設定最多3層目錄
location對url進行匹配.可以進行重定向或者進行新的** 負載均衡
Nginx的upstream 支援演算法
nginx的upstream目前支援5種方式的分配 1 輪詢 預設 每個請求按時間順序逐一分配到不同的後端伺服器,如果後端伺服器down掉,能自動剔除。2 weight 指定輪詢機率,weight和訪問比率成正比,用於後端伺服器效能不均的情況。例如 upstream bakend 3 ip hash...
nginx中的upstream使用
背景 最開始來公司的時候,由於公司已經上雲,使用的是slb了,所以慢慢的就沒使用upstream了,但是線下還是有一些專案還是在使用這個,為了防止忘記就記錄了一下,upstream的基本使用 upstream admin 在需要使用負載均衡的server中增加 每個裝置的狀態設定為 1 down表示...
nginx中的upstream使用
upstream的基本使用 upstream admin 在需要使用負載均衡的server中增加 每個裝置的狀態設定為 1 down表示當前的server暫時不參與負載 2 weight 預設為1.weight越大,負載的權重就越大,那麼該伺服器被訪問到的機率就越大 3 max fails 允許請求...