首頁  >  文章  >  後端開發  >  幾種常見的軟體負載平衡的演算法。

幾種常見的軟體負載平衡的演算法。

WBOY
WBOY原創
2016-08-08 09:21:461440瀏覽

主要的幾種負載平衡的演算法都在nginx裡面有用到,以下這篇文章對這幾種演算法介紹比較詳細,請參考。

http://baidutech.blog.51cto.com/4114344/1033718

文中提到了幾種常見的軟體負載均衡的演算法,平均分配(輪詢),加權輪詢;ip hash; fair(最小值負載平衡)這裡需要提到一點,筆者曾見過一位同事分析採用這個最小值負載平衡演算法可能產生抖動,由於機器上報延遲產生,同時上文中也提到了「這種策略具有很強的自適應性,但是實際的網路環境往往不是那麼簡單,因此要慎用。

其中筆者的一位同事就是採用的帶權值的隨機負載平衡的演算法:每個機器的空閒率[0.01,1) 1 - 實際請求量/機器負載能力;然後將所有機器的空閒率[0.01,1) 1 - 實際請求量/機器負載能力;然後將所有機器的空閒率相加和S,隨機產生一個[0.01,1)的數R;得到D=S*R;用D依序減去每台機器的空閒率直到D

除了nginx還有兩種常用的負載平衡的軟體LVS 和HAProxy

三種軟體所用的中轉模式總結請見文章:

/article/details/46712105#

三種負載平衡軟體的優缺點請見文章:

:學//www.ha97.com/5646.html版權聲明:本文為部落客原創文章,未經部落客允許不得轉載。 以上就介紹了幾種常見的軟體負載平衡的演算法。 ,包括了方面的內容,希望對PHP教程有興趣的朋友有所幫助。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn