Dubbo负载均衡机制
負(fù)載均衡
參考文檔
http://dubbo.apache.org/zh-cn/docs/user/demos/loadbalance.html
負(fù)載均衡機(jī)制
Dubbo提供了四種負(fù)載均衡機(jī)制
默認(rèn)為,random隨機(jī)調(diào)用
Random LoadBalance
每次請求,根據(jù)權(quán)重隨機(jī)發(fā)送
隨機(jī),按權(quán)重設(shè)置隨機(jī)概率
在一個(gè)截面上碰撞的概率高,但調(diào)用量越大分布越均勻
而且,按概率使用權(quán)重后也比較均勻,有利于動態(tài)調(diào)整提供者權(quán)重
RoundRobin LoadBalance
每次請求,根據(jù)權(quán)重
輪詢進(jìn)行發(fā)送,不是隨機(jī)的
輪循,按公約后的權(quán)重設(shè)置輪循比率
存在慢的提供者累積請求的問題
比如:第二臺機(jī)器很慢,但沒掛
當(dāng)請求調(diào)到第二臺時(shí)就卡在那,久而久之,所有請求都卡在調(diào)到第二臺上
LeastActive LoadBalance
每次請求,根據(jù)上一次請求處理的花費(fèi)時(shí)間
發(fā)送請求,到花費(fèi)最少時(shí)間的服務(wù)器上
最少活躍調(diào)用數(shù)
相同活躍數(shù)的隨機(jī),活躍數(shù)指調(diào)用前后計(jì)數(shù)差
使慢的提供者收到更少請求
因?yàn)?#xff0c;越慢的提供者的調(diào)用前后計(jì)數(shù)差會越大
ConsistentHash LoadBalance
一致性hash
根據(jù)請求的方法名、參數(shù)信息
Hash運(yùn)算,發(fā)送請求到指定的服務(wù)器
只要請求相同,就會發(fā)送到同一臺服務(wù)器上
一致性 Hash
相同參數(shù)的請求總是發(fā)到同一提供者
當(dāng)某一臺提供者掛時(shí),原本發(fā)往該提供者的請求
基于虛擬節(jié)點(diǎn),平攤到其它提供者,不會引起劇烈變動
算法參見:http://en.wikipedia.org/wiki/Consistent_hashing
缺省只對第一個(gè)參數(shù) Hash
如果,要修改,請配置
缺省用 160 份虛擬節(jié)點(diǎn)
如果,要修改,請配置
總結(jié)
以上是生活随笔為你收集整理的Dubbo负载均衡机制的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Dubbo权重配置
- 下一篇: Dubbo负载均衡配置