丝袜人妻一区二区三区_少妇福利无码视频_亚洲理论片在线观看_一级毛片国产A级片

當(dāng)前位置:首頁 > 教育

ribbon Spring Cloud Netflix Ribbon介紹

在上一篇文章中,我們介紹了如何使用功能區(qū)的輪詢機制為消費者配置負(fù)載平衡策略。這一次,我們將進一步了解功能區(qū)的一些細(xì)節(jié)以及如何自定義負(fù)載平衡策略。

談?wù)凴ibbon上負(fù)載均衡的總體思路。它用@ LoadBalanced修改RestTemplate,并將其提交到功能區(qū)進行配置。它為RestTemplate定義了一個攔截器,攔截rest請求,并將其提交給Ribbon進行處理,然后將其發(fā)送出去。Ribbon主要負(fù)責(zé)選擇合適的實例和構(gòu)造URL。(不想詳細(xì)分析。如果你有興趣,可以看看LoadBalancerAutoConfiguration,LoadBalancerClient和LoadBalancerClient。).

讓我們來看看以下我們可能使用的重要接口。

load平衡器:Ribbon的負(fù)載平衡器接口,定義了添加服務(wù)實例、選擇服務(wù)實例、標(biāo)記服務(wù)實例離線、獲取當(dāng)前可用實例和獲取所有服務(wù)實例的方法。通過方法定義可以看出,這個類是Ribbon最重要的管理類。它管理所有實例,并通過在實例方法中獲取負(fù)載平衡策略來選擇要返回的適當(dāng)實例。主要涉及到AbstractLoadBalancer平衡器的實現(xiàn)接口,定義了一些基本方法。

1.baseload平衡器:繼承了負(fù)載平衡器的基本實現(xiàn)類AbstractLoad平衡器,有幾點需要注意:IP(檢測實例狀態(tài)的方法)對象沒有實現(xiàn),是空,需要在構(gòu)造時傳入。檢查實例狀態(tài)的默認(rèn)策略是串行策略,它使用傳入規(guī)則和輪詢實例來檢查它們的狀態(tài),這在網(wǎng)絡(luò)中是不好的。檢查策略也可以自定義傳入。定義了IRule對象,主要用于定義負(fù)載均衡策略。iLoad平衡器將通過構(gòu)造函數(shù)將自身傳遞到IRule中,IRule將通過select函數(shù)獲取服務(wù)器列表,并返回規(guī)則下的服務(wù)器。均衡器的默認(rèn)規(guī)則是RoundRobinRule,其策略是線性輪詢服務(wù)實例返回。

2.這個類繼承了抽象負(fù)載平衡器。從名字可以看出來,反正也沒啥用。。。

3.動態(tài)服務(wù)器列表負(fù)載均衡器繼承了BaseLoadBalancer,實現(xiàn)了在運行過程中動態(tài)更新服務(wù)列表的能力,并具有過濾服務(wù)列表的功能。你可以自己看,我也沒仔細(xì)看。

4.繼承了DynamicServerlistloadBalancer的ZoneWareloadBalancer是功能最完善、最強大的。由于DynamicServerlistloadBalancer平衡器使用輪詢方法調(diào)用實例,在不同的區(qū)域,網(wǎng)絡(luò)延遲可能會影響性能,因此出現(xiàn)了Zonewareload平衡器,它具有區(qū)域親和力,會優(yōu)先考慮同一區(qū)域的實例。它使用區(qū)域回避規(guī)則作為負(fù)載平衡策略。

規(guī)則:負(fù)載平衡策略接口

1.抽象負(fù)載平衡規(guī)則,實現(xiàn)一些基本方法。iLoad平衡器對象已定義。

2.隨機規(guī)則:隨機選擇策略。

3.圓形輪詢規(guī)則:線性輪詢策略

4.RetryRule:內(nèi)部定義了另一種輪換策略,它具有判斷一個實例是否存活的能力,如果不存活,輪詢選擇其他實例,判斷實例的狀態(tài)。它還設(shè)置了一個超時函數(shù),如果在指定的時間內(nèi)無法選擇可用的實例,則返回null。

5.加權(quán)響應(yīng)時間規(guī)則:RoundRobinRule的擴展,它定義了一個計算實例權(quán)重的算法。權(quán)重與實例的響應(yīng)時間有關(guān)。反正最后的效果就是響應(yīng)時間短的實例更容易被選中。

6.clientconfigenabledroundorbinrule:實現(xiàn)與roundRobinrule一致,后者用于其他類通過繼承來擴展。

7.BestAvailableRule從ClientConfigenableDroundroBinrule繼承,后者通過遍歷所有實例來篩選故障實例,并找到需要返回的并發(fā)請求最少的實例。誰最閑找誰做事。

8.PredicateBasedRule:這個規(guī)則首先實現(xiàn)過濾(一種判斷實例是否有故障且沒有空忙的算法),然后遍歷尋找一個實例。這個我不太清楚。

9.AvailabilityFilteringRule:Inherit PredicateBasedRule,直接遍歷實例,根據(jù)規(guī)則找到合適的實例后返回。

10.區(qū)域回避規(guī)則:繼承了表語基本規(guī)則,具有區(qū)域親和策略。首先,通過區(qū)域過濾掉同一區(qū)域中的實例,然后選擇一個實例。如果同一區(qū)域中沒有實例,則線性遍歷其他實例。

檢測實例是否可用的接口

1.抽象負(fù)載平衡器:實現(xiàn)IPing,定義抽象負(fù)載平衡器。

2.no apping:ipping被實現(xiàn)并返回true,表示默認(rèn)情況下所有實例都可用。

3.DummyPing:默認(rèn)情況下返回true,構(gòu)造一個initwithinWSConfig空方法,應(yīng)該用來給開發(fā)人員提供自己繼承的類。

4.NiwsDiscoverging:與尤里卡結(jié)合使用時,以注冊中心管理的實例狀態(tài)為準(zhǔn),處于UP狀態(tài)的實例返回為可用。

5.PingConstant:實現(xiàn)IPing,可以通過設(shè)置setConstant來設(shè)置當(dāng)前或所有實例的狀態(tài)。

6.pingur:實現(xiàn)IP,通過發(fā)送http請求判斷實例返回值的狀態(tài)碼是否為200,判斷實例是否存活。默認(rèn)地址為http或https://ip: port,可以通過setPingAppendString將ip后的字符串聯(lián)起來形成。

以上三個接口是Ribbon上最重要的接口,其他接口這里不介紹。

先說一下Ribbon使用的默認(rèn)接口。注意,與尤里卡整合后,界面發(fā)生了變化。

1.iLoad平衡器,所用的區(qū)域負(fù)載平衡器

2.I規(guī)則,已使用區(qū)域回避規(guī)則

3.IPing,使用NoOpPing,可以默認(rèn)完成

4.服務(wù)器列表服務(wù)器,由ConfigurationBasedServerList決定。配置模式為:servername . ribbon . list of server = localhost:8001,localhost: 8002,localhost: 8003

5.服務(wù)器列表過濾服務(wù)器,默認(rèn)使用ZonePreferenceServerListFilter,優(yōu)先過濾同一區(qū)域的實例。

6.功能區(qū)的客戶端配置IClientConfig默認(rèn)使用默認(rèn)客戶端配置

與尤里卡集成后,界面實例的使用有以下變化:

1.服務(wù)器列表服務(wù)器,由DiscoveryEnabledNIWSServerList替換。這個類實現(xiàn)了尤里卡注冊中心對服務(wù)實例列表的管理。指示Ribbon直接從尤里卡注冊中心獲取服務(wù)列表。

2.IPing被。NIWSDiscoveryPing,這意味著實例的狀態(tài)由尤里卡注冊表維護,如果注冊表列表中的實例處于UP狀態(tài),它將返回可用。

以上介紹完畢,我們來看看如何定制這些策略的實現(xiàn)類。如果想實現(xiàn)這些接口,可以自己做。

通過查看功能區(qū)源代碼,我們可以找到以下類,其構(gòu)造函數(shù)定義了這些配置的字段。

publicPropertiesFactory(){

class to property . put(iLoad平衡器. class,NFLoadBalancerClassName);

class topproperty . put(ipping . class,nfloadbalancerspingClassName);

class topproperty . put(irule . class,nfloadbalancercruleclassname);

class topproperty . put(serverlist . class,niwsserverlist class name);

class topproperty . put(serveristfilter . class,niwsserveristfilterclassname);

}

我們可以看到它支持五個接口的實現(xiàn)類配置。例如,通過servername . ribbon . nfloadbalancercruleclassname = com . Netflix . load balancer . random rule,配置servername的負(fù)載平衡策略以隨機選擇一個實例。沒有服務(wù)名的配置意味著全局效應(yīng)。好了,結(jié)束了,親測有效。您可以嘗試自定義自己的負(fù)載平衡配置!

1.《ribbon Spring Cloud Netflix Ribbon介紹》援引自互聯(lián)網(wǎng),旨在傳遞更多網(wǎng)絡(luò)信息知識,僅代表作者本人觀點,與本網(wǎng)站無關(guān),侵刪請聯(lián)系頁腳下方聯(lián)系方式。

2.《ribbon Spring Cloud Netflix Ribbon介紹》僅供讀者參考,本網(wǎng)站未對該內(nèi)容進行證實,對其原創(chuàng)性、真實性、完整性、及時性不作任何保證。

3.文章轉(zhuǎn)載時請保留本站內(nèi)容來源地址,http://f99ss.com/jiaoyu/824197.html

上一篇

兒子活埋母親:用黃土封住但沒踩實

下一篇

澳大利亞彩虹海灘發(fā)現(xiàn)銀幣水母Porpita porpita 通體青藍(lán)夢幻

勞動手抄報 五一勞動節(jié)手抄報,海量素材、邊框、實例!

  • 勞動手抄報 五一勞動節(jié)手抄報,海量素材、邊框、實例!
  • 勞動手抄報 五一勞動節(jié)手抄報,海量素材、邊框、實例!
  • 勞動手抄報 五一勞動節(jié)手抄報,海量素材、邊框、實例!

公路工程預(yù)算實例 《公路工程預(yù)算定額》應(yīng)用要點及實例!這一篇全了!

  • 公路工程預(yù)算實例 《公路工程預(yù)算定額》應(yīng)用要點及實例!這一篇全了!
  • 公路工程預(yù)算實例 《公路工程預(yù)算定額》應(yīng)用要點及實例!這一篇全了!
  • 公路工程預(yù)算實例 《公路工程預(yù)算定額》應(yīng)用要點及實例!這一篇全了!

雙t板 雙T板應(yīng)用實例——上海李爾亞洲總部大樓項目

  • 雙t板 雙T板應(yīng)用實例——上海李爾亞洲總部大樓項目
  • 雙t板 雙T板應(yīng)用實例——上海李爾亞洲總部大樓項目
  • 雙t板 雙T板應(yīng)用實例——上海李爾亞洲總部大樓項目

什么淡什么輕 什么是輕,什么是重?6大要點、7個實例、5種方法讓你明白畫面中的“輕”與“重”

  • 什么淡什么輕 什么是輕,什么是重?6大要點、7個實例、5種方法讓你明白畫面中的“輕”與“重”
  • 什么淡什么輕 什么是輕,什么是重?6大要點、7個實例、5種方法讓你明白畫面中的“輕”與“重”
  • 什么淡什么輕 什么是輕,什么是重?6大要點、7個實例、5種方法讓你明白畫面中的“輕”與“重”

建筑面積怎么算 造價輔導(dǎo):建筑面積怎么算?用實例進行分析解讀

平面圖,如下圖所示:  雨篷建筑面積=雨篷頂蓋水平投影面積的1/2 其中: r =(10.09+0.125)m = 10.215m; d =(3.0×3+3.9×2+0.125×2)m = 17.05m; h =(2.4+2.1+0.125-0.225)m = 4....

剪裁照片 如何裁剪好人像照片?攝影師用實例分享這6大關(guān)鍵點

  • 剪裁照片 如何裁剪好人像照片?攝影師用實例分享這6大關(guān)鍵點
  • 剪裁照片 如何裁剪好人像照片?攝影師用實例分享這6大關(guān)鍵點
  • 剪裁照片 如何裁剪好人像照片?攝影師用實例分享這6大關(guān)鍵點

濟南寫字樓出租 實例分析!100㎡寫字樓,月租金12000元,100㎡住宅,月租金不足5000元,你選哪個?

  • 濟南寫字樓出租 實例分析!100㎡寫字樓,月租金12000元,100㎡住宅,月租金不足5000元,你選哪個?
  • 濟南寫字樓出租 實例分析!100㎡寫字樓,月租金12000元,100㎡住宅,月租金不足5000元,你選哪個?
  • 濟南寫字樓出租 實例分析!100㎡寫字樓,月租金12000元,100㎡住宅,月租金不足5000元,你選哪個?
負(fù)載箱 阻性負(fù)載柜,容性負(fù)載柜,感性負(fù)載箱區(qū)別

負(fù)載箱 阻性負(fù)載柜,容性負(fù)載柜,感性負(fù)載箱區(qū)別

電源負(fù)載柜 JAY-3119 嘉義JAY-3119電力負(fù)荷柜(三工位)廠家可定制新國標(biāo)實驗機 一、產(chǎn)品概述 負(fù)載柜按GB4943、GB2099、GB16915.1、GB7000.1、IEC60884、IEC61058、IEC60669.1等國家相關(guān)要求設(shè)計制造。適用...