nginx的五種負載演算法《轉》

2021-09-02 03:08:18 字數 2274 閱讀 4780

在負載反向**的演算法上,共有五種:輪詢、ip_hash、weight、fair(第三方)、url_hash(第三方)

輪詢是預設的,每乙個請求按順序逐一分配到不同的後端伺服器,如果後端伺服器down掉了,則能自動剔除。(如果又存活了,能自動加進來嗎?)

配置檔案如下:

upstream test

測試結果:

[root@xxw conf]# for i in $(seq 10); do curl 

;done

192.168.109.5  it is work!

192.168.109.3 it is work!

192.168.109.5  it is work!

192.168.109.3 it is work!

192.168.109.5  it is work!

192.168.109.3 it is work!

192.168.109.5  it is work!

192.168.109.3 it is work!

192.168.109.5  it is work!

192.168.109.3 it is work!

weight

是設定權重,用於後端伺服器效能不均的情況,訪問比率約等於權重之比

配置檔案:

upstream test

測試結果:

[root@xxw conf]# for i in $(seq 10); do curl 

;done

192.168.109.5  it is work!

192.168.109.3 it is work!

192.168.109.3 it is work!

192.168.109.3 it is work!

192.168.109.3 it is work!

192.168.109.3 it is work!

192.168.109.5  it is work!

192.168.109.3 it is work!

192.168.109.3 it is work!

192.168.109.3 it is work!

測試結果一直是訪問這個

1次,再訪問那個

5次,反覆迴圈。

ip_hash

解決了session

問題:每個請求按訪問ip的

hash

結果分配,這樣每個訪客可以固定乙個後端伺服器。

配置檔案:

upstream test

測試結果:

[root@xxw conf]# for i in $(seq 10); do curl 

;done

192.168.109.5  it is work!

192.168.109.5  it is work!

192.168.109.5  it is work!

192.168.109.5  it is work!

192.168.109.5  it is work!

192.168.109.5  it is work!

192.168.109.5  it is work!

192.168.109.5  it is work!

192.168.109.5  it is work!

192.168.109.5  it is work!

fair

(第三方)按後端伺服器的響應時間來分配請求,響應時間短的優先分配。

配置檔案:

upstream test

url_hash

(第三方) 按訪問url的hash結果來分配請求,使每個url定向到同乙個後端伺服器,後端伺服器為快取時比較適用。另外,在upstream中加入hash語句後,server語句不能寫入weight等其他引數。

配置檔案:

upstream test

upstream test

#down 暫時不參與負載

#weight 權重

#max_fail 允許請求失敗的次數,預設為1

#fail_timeout max_fail次失敗後,暫停的時間

#backup 所有其他非backup機器down或者忙的時候,才請求backup。所以這台機器壓力最輕。

location /

root 指令:指定目錄

proxy_pass  proxy_store  proxy_cache :實現快取**

expires  

指定快取時間

原文:

nginx的五種負載演算法

nginx weight url hash 是預設的,每乙個請求按順序逐一分配到不同的後端伺服器,如果後端伺服器 down 測試結果 root xxw conf for i in seq 10 do curl done 192.168.109.5it is work 192.168.109.3 it...

nginx的五種負載演算法

輪詢方式,依次將請求分配到各個後台伺服器中,預設的負載均衡方式。適用於後台機器效能一致的情況。掛掉的機器可以自動從服務列表中剔除。根據權重來分發請求到不同的機器中,指定輪詢機率,weight和訪問比率成正比,用於後端伺服器效能不均的情況。例如 upstream bakend根據請求者ip的hash值...

nginx的五種負載演算法模式

nginx 負載均衡5種配置方式 1 輪詢 預設 每個請求按時間順序逐一分配到不同的後端伺服器,如果後端伺服器down掉,能自動剔除。2 weight 指定輪詢機率,weight和訪問比率成正比,用於後端伺服器效能不均的情況。例如 upstream bakend 3 ip hash 每個請求按訪問i...