如何解析SpringCloud五大核心組件中的Ribbon

本篇文章為大家展示了如何解析Spring Cloud 五大核心組件中的Ribbon,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。

創(chuàng)新互聯(lián)建站是一家集網(wǎng)站建設(shè),江口企業(yè)網(wǎng)站建設(shè),江口品牌網(wǎng)站建設(shè),網(wǎng)站定制,江口網(wǎng)站建設(shè)報價,網(wǎng)絡(luò)營銷,網(wǎng)絡(luò)優(yōu)化,江口網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強企業(yè)競爭力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時我們時刻保持專業(yè)、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實用型網(wǎng)站。

1 . 負(fù)載均衡  

 
其實提到負(fù)載均衡,大部分人都會想到在我們的服務(wù)前置一個nginx,但是這只是實現(xiàn)了服務(wù)器端的負(fù)載均衡,那么客戶端的負(fù)載均衡怎么解決呢?  

2.Spring Cloud核心組件: Ribbon  

 
還好Spring Cloud五大核心組件中的Ribbon是專門來解決這個問題的。 我們先來簡單介紹一下Ribbon。  

 
Spring Cloud Ribbon是一個基于HTTP和TCP的客戶端負(fù)載均衡工具,它基于Netflix Ribbon實現(xiàn)。 通過Spring Cloud的封裝,可以讓我們輕松地將面向服務(wù)的REST模版請求自動轉(zhuǎn)換成客戶端負(fù)載均衡的服務(wù)調(diào)用。  

 
Spring Cloud Ribbon雖然是一個工具類框架,它不需要獨立部署,但是它幾乎存在于每一個Spring Cloud構(gòu)建的微服務(wù)和基礎(chǔ)設(shè)施中。  

 
微服務(wù)間的調(diào)用,API網(wǎng)關(guān)的請求轉(zhuǎn)發(fā)等內(nèi)容,實際上都是通過Ribbon來實現(xiàn)的。同時Ribbon默認(rèn)為我們提供了很多負(fù)載均衡算法,例如輪詢、隨機等。當(dāng)然,我們也可為Ribbon實現(xiàn)自定義的負(fù)載均衡算法。  

 
3.Ribbon中的幾個重要組件  

 
Ribbon由很多組件組成,其中最重要的就是以下6個 :  

 
IRule: 訪問微服務(wù)列表的規(guī)則。    

IPing: 檢查微服務(wù)是否存活。    

ServerList: 用于獲取微服務(wù)地址列表。 它既可以是靜態(tài)的(提供一組固定的地址),也可以是動態(tài)的(從注冊中心中定期查詢地址列表)。    
    
ServerListFilter: 對ServerList服務(wù)器列表進行二次過濾。    
   
ServerListUpdater:  定義服務(wù)更新策略 。    

 
ILoadBalancer: 軟件負(fù)載平衡器入口,整合以上所有的組件實現(xiàn)負(fù)載功能。    

那么這幾個組件之間是如何組合發(fā)揮自己的作用呢?  

 
ServerList在默認(rèn)情況下通過靜態(tài)配置來維護服務(wù)器列表,但是通常情況下都會保持非常多的線程池連接,而ServerListFilter可以對其進行過濾,刪除某些不必要的server。  

根據(jù)IPing的心跳判斷服務(wù)是否存活,再ServerListUpdater去更新服務(wù)器狀態(tài)。  

IRule則是判斷服務(wù)訪問的策略,輪詢,隨機等,以上所有的組件,都將組合到ILoadBalancer這個類中進行工作。    

上述內(nèi)容就是如何解析Spring Cloud 五大核心組件中的Ribbon,你們學(xué)到知識或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識儲備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

當(dāng)前文章:如何解析SpringCloud五大核心組件中的Ribbon
地址分享:http://muchs.cn/article16/jcjddg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計、云服務(wù)器、靜態(tài)網(wǎng)站、面包屑導(dǎo)航、網(wǎng)站制作、電子商務(wù)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)