Ribbon負(fù)載均衡框架
微服務(wù)架構(gòu)中采用Ribbon解決客戶端負(fù)載均衡問題,Ribbon是Netflix發(fā)布的開源項(xiàng)目,主要功能是提供客戶端的軟件負(fù)載均衡算法,Ribbon客戶端組件提供一系列完善的配置項(xiàng)如連接超時(shí),重試等解決方案,Ribbon的負(fù)載均衡算法有:
(1) RoundRobinRule:輪詢;
(2) RandomRule:隨機(jī);
(3) AvailabilityFilteringRule:會(huì)先過濾掉由于多次訪問故障而處于斷路器跳閘狀態(tài)的服務(wù),還有并發(fā)的連接數(shù)量超過閾值的服務(wù),然后對(duì)剩余的服務(wù)列表按照輪詢策略進(jìn)行訪問;
(4) WeightedResponseTimeRule:根據(jù)平均響應(yīng)時(shí)間計(jì)算所有服務(wù)的權(quán)重,響應(yīng)時(shí)間越快服務(wù)權(quán)重越大被選中的概率越高。剛啟動(dòng)時(shí)如果統(tǒng)計(jì)信息不足,則使用RoundRobinRule策略,等統(tǒng)計(jì)信息足夠,會(huì)切換到WeightedResponseTimeRule
(5) RetryRule:先按照RoundRobinRule的策略獲取服務(wù),如果獲取服務(wù)失敗則在指定時(shí)間內(nèi)會(huì)進(jìn)行重試,獲取可用的服務(wù);
(6) BestAvailableRule:會(huì)先過濾掉由于多次訪問故障而處于斷路器跳閘狀態(tài)的服務(wù),然后選擇一個(gè)并發(fā)量最小的服務(wù);
(7) ZoneAvoidanceRule:默認(rèn)規(guī)則,復(fù)合判斷server所在區(qū)域的性能和server的可用性選擇服務(wù)器。

?SpringCloud Ribbon流程圖
服務(wù)部署在服務(wù)器上,啟動(dòng)后,會(huì)將服務(wù)的接口注冊(cè)在Nacos注冊(cè)中心中,并采用心跳機(jī)制,告訴注冊(cè)中心該服務(wù)是否健康,注冊(cè)中心可以查看服務(wù)的健康狀況,出現(xiàn)調(diào)用不到的情況后,注冊(cè)中心會(huì)剔除該服務(wù),客戶端在調(diào)用服務(wù)后,Ribbon從注冊(cè)中心中取出可以正常服務(wù)的接口,并采用輪詢、隨機(jī)等方式實(shí)現(xiàn)負(fù)載均衡效果。
審核編輯 黃宇
-
負(fù)載
+關(guān)注
關(guān)注
2文章
670瀏覽量
36682 -
服務(wù)器
+關(guān)注
關(guān)注
14文章
10321瀏覽量
91657 -
框架
+關(guān)注
關(guān)注
0文章
404瀏覽量
18476
發(fā)布評(píng)論請(qǐng)先 登錄
阿里云SLB負(fù)載均衡配置指南
下單、收銀不中斷,負(fù)載均衡是零售系統(tǒng)平穩(wěn)運(yùn)行的基石
Nginx反向代理和負(fù)載均衡配置實(shí)戰(zhàn)
彈性負(fù)載均衡:現(xiàn)代 IT 架構(gòu)的高可用與高并發(fā)基石
逐流、逐包、Flowlet:哪種負(fù)載均衡技術(shù)更適合未來網(wǎng)絡(luò)?
Nginx和HAProxy企業(yè)級(jí)負(fù)載均衡方案的對(duì)比
燃料電池負(fù)載均衡測(cè)試:解鎖高效供能密碼
華納云:海外服務(wù)器負(fù)載均衡與高可用架構(gòu)設(shè)計(jì)
怎樣確定分布式光伏集群通信網(wǎng)絡(luò)的負(fù)載均衡策略?
Nginx負(fù)載均衡策略選擇指南
如何在多顯卡環(huán)境下配置OLLAMA實(shí)現(xiàn)GPU負(fù)載均衡
超級(jí)法拉電容需要接均衡板嗎?
智能路徑調(diào)度:AI驅(qū)動(dòng)負(fù)載均衡的異常路徑治理實(shí)踐
一文詳解Nginx負(fù)載均衡
Ribbon負(fù)載均衡框架
評(píng)論