閱讀427 返回首頁    go 財經資訊


為什麼不均衡__常見問題_負載均衡-阿裏雲

我的負載均衡為什麼不均衡

我有一個負載均衡實例,後麵掛了4個ECS,我測試為什麼不均衡?

負載均衡均衡的是什麼?

負載均衡是按特定調度算法把流量分發到後端Server上,其中:

4層(TCP和UDP)是基於連接做流量做調度。TCP和UDP創建一個socket訪問負載均衡實例,這個源和目的ip,port就是一個連接。

7層(HTTP/HTTPS)是基於請求做調度。比如 http get請求訪問一個頁麵。

為什麼會不均衡?

配置了會話保持,訪問負載均衡實例的客戶端又很少,容易導致不均衡。尤其在使用少量客戶端對負載均衡進行測試的時候常見。比如TCP的監聽,開啟了會話保持(4層是基於來源地址做的會話保持),使用一台客戶端對負載均衡實例進行壓測,就會導致不均衡。

後端Server的健康建狀態異常會導致不均衡,尤其在壓測的時候容易忽略後端Server的健康檢查狀態,如果有後端Server健康檢查失敗或者健康檢查狀態經常跳躍(好到壞,又從壞到好,反複變化)必然會導致不均衡。

後端Server有些開啟了TCP Keepalive保持長連接,而有些又沒有開啟,則連接會在保持長連接的後端服務器上堆積,造成不均衡。

由於SLB的底層架構原理,當連接數比較少不夠分配時,可能會表現得不均衡,最壞情況每台後端Server之間連接的差異可達到48個。

建議您還可排查是否有以下情況:

  • 後端各台ECS的權重是否設置的相同;
  • 在相關時間段內是否有健康檢查失敗或波動現象(查vnet或sls日誌),查找波動的原因;或者健康檢查沒有配置正確的響應碼2xx,3xx導致了健康檢查顯示正常,但後端服務有異常(健康檢查失敗(網絡後端RS服務或主機故障));
  • 是否同時使用了wlc算法和會話保持,如果是嚐試改為加權輪詢wrr算法和會話保持。

最後更新:2016-12-20 16:36:25

  上一篇:go 負載均衡按域名和URL轉發常見問題__常見問題_負載均衡-阿裏雲
  下一篇:go HTTPS 雙向認證常見問題__常見問題_負載均衡-阿裏雲