文章目錄
一:Dubbo注冊中心引言
1:什么是Dubbo的注冊中心?
2:注冊中心關(guān)系圖解
3:引入注冊中心服務(wù)執(zhí)行流程
4:Dubbo注冊中心好處
5:注冊中心核心作用
二:注冊中心實(shí)現(xiàn)方案
1:早期
2:當(dāng)前現(xiàn)狀
三:DubboAdmin介紹
1:DubboAdmin簡介
2:DubboAdmin的主要功能
一:Dubbo注冊中心引言
1:什么是Dubbo的注冊中心?
? ? ? ? Dubbo注冊中心是Dubbo服務(wù)治理中極其重要的一個(gè)概念。它主要是用于對Rpc集群應(yīng)用實(shí)例進(jìn)行管理。
? ? ? ? 對于我們的Dubbo服務(wù)來講,至少有兩部分構(gòu)成,一部分是Provider一部分是Consumer。一個(gè)提供服務(wù),一個(gè)調(diào)用我們的服務(wù)。
? ? ? ? 后續(xù)隨著規(guī)模的擴(kuò)大,單機(jī)Provider受限于物理機(jī)的內(nèi)存、CPU、網(wǎng)絡(luò)帶寬等硬件瓶頸,以及隨著請求數(shù)量越來越多,鏈接數(shù)量也可能會(huì)達(dá)到瓶頸,這樣的話,我們需要橫向拓展我們的系統(tǒng)。這樣我們的Consumer和Provider都會(huì)越來越多!
? ? ? ? Consumer和Provider都會(huì)越來越多之后,如何管理這么多的實(shí)例就需要引入我們的注冊中心了。這就是Dubbo引入注冊中心的必要性!
2:注冊中心關(guān)系圖解
3:引入注冊中心服務(wù)執(zhí)行流程
?????????Dubbo引入注冊中心之后,我們的服務(wù)流程有了一點(diǎn)點(diǎn)的變化!
? ? ? ? 引入注冊中心的目的就是為了管理Provider集群。其中管理者一個(gè)服務(wù)的一組多個(gè)實(shí)例。? ? ? ? ????????
????????第一步:作為我們這一組Provider實(shí)例,必須在服務(wù)啟動(dòng)的時(shí)候首先向我們的注冊中心進(jìn)行注冊,注冊的內(nèi)容中最為核心的內(nèi)容就是本服務(wù)的ip地址和端口號(hào)。(當(dāng)然肯定有別的內(nèi)容,后續(xù)介紹?。?/span>
????????第二步:我們的客戶端也就是消費(fèi)者Consumer來對我們的提供者Provider來發(fā)起調(diào)用!所以,首先在消費(fèi)者啟動(dòng)的時(shí)候從注冊中心拉取、訂閱、服務(wù)發(fā)現(xiàn)我們的提供者的列表。把這個(gè)列表拉取到我們消費(fèi)者的本地進(jìn)行保存。
????????第三步:這時(shí)候基于不同的負(fù)載均衡算法,從注冊中心管理的諸多提供者實(shí)例中挑選一個(gè)實(shí)例出來進(jìn)行Rpc調(diào)用。(負(fù)載均衡算法為了滿足挑選實(shí)例的需要,這是一種客戶端負(fù)載均衡的策略。Ngnix是服務(wù)端的負(fù)載均衡)
????????第四步:第四步,我們就是要去做容錯(cuò)機(jī)制。什么叫容錯(cuò)呢?剛才,我們的服務(wù)器都進(jìn)行了注冊,然后消費(fèi)者都拿到了他們的注冊信息,萬一發(fā)起請求的時(shí)候,某個(gè)提供者服務(wù)端掛了呢?這是有可能的。
? ? ? ? 所以,容錯(cuò)機(jī)制就是當(dāng)我們真實(shí)發(fā)起調(diào)用的時(shí)候,如果服務(wù)端掛了,怎么能夠基于容錯(cuò)機(jī)制,把請求打到可用的實(shí)例上。
????????第五步:獲取真實(shí)的反應(yīng)結(jié)果。
4:Dubbo注冊中心好處
? ? ? ? 好處一:可以有效的管理RPC集群的健康情況,動(dòng)態(tài)的上線或者下線服務(wù)。讓我們的服務(wù)更加?可?。
? ? ? ? 結(jié)合我們上邊的圖理解一下就好。注冊中心將所有的提供者都注冊到它本身,這樣注冊中心不僅僅留存了他們所有的ip和端口號(hào)。
????????更重要的是,有了這些信息之后,就可以對服務(wù)的健康問題進(jìn)行檢查。
????????一旦服務(wù)掛了,可以實(shí)現(xiàn)服務(wù)的動(dòng)態(tài)下線,或者流量激增,我們也可以動(dòng)態(tài)讓我們的下線服務(wù)再次上線!注冊中心可以完成這個(gè)事!
????????好處二:Provider與Consumer解耦合。
? ? ? ? 不用注冊中心,我們就得進(jìn)行消費(fèi)者和提供者之間的直連,這樣的話把提供者的ip地址和端口號(hào)綁定到我們的消費(fèi)者服務(wù)當(dāng)中,這是一種耦合!
? ? ? ?好處三:提供負(fù)載均衡機(jī)制。
? ? ? ?可以合理的分配流量
? ? ? ?好處四:提供容錯(cuò)機(jī)制。
? ? ? ? 剛才已經(jīng)分析過了。某一個(gè)實(shí)例掛了,會(huì)自動(dòng)切換到一個(gè)健康的實(shí)例上,這是一種高可用的體現(xiàn)!
5:注冊中心核心作用
作用一:服務(wù)注冊,服務(wù)提供者(Provider)在啟動(dòng)時(shí),會(huì)將自身可提供的服務(wù)注冊到注冊中心
作用二:服務(wù)發(fā)現(xiàn),服務(wù)消費(fèi)者(Consumer)在啟動(dòng)時(shí),會(huì)向注冊中心訂閱??需要的服務(wù),注冊中心會(huì)將相應(yīng)的服務(wù)提供者信息返回給消費(fèi)者,消費(fèi)者據(jù)此可以調(diào)用對應(yīng)的服務(wù)。
作用三:服務(wù)路由,負(fù)載均衡、容錯(cuò)
作用四:服務(wù)監(jiān)控,注冊中?可以記錄服務(wù)的調(diào)?次數(shù)、調(diào)?延遲等信息,對服務(wù)的質(zhì)量進(jìn)?監(jiān)控。
二:注冊中心實(shí)現(xiàn)方案
1:早期
? ? ? ? 早期在生產(chǎn)環(huán)境當(dāng)中,我們主要使用Zookeeper作為Dubbo的注冊中心實(shí)現(xiàn)。我們前邊所講到的所有內(nèi)容都交給了Zookeeper
2:當(dāng)前現(xiàn)狀
? ? ? ?當(dāng)前,隨著技術(shù)發(fā)展,很有優(yōu)秀的注冊中心涌現(xiàn)出來:Zookeeper、Nacos、Consul、Etcd等等
? ? ? ? 在今天,Dubbo的注冊中心有很多選擇,后續(xù)我們的文章當(dāng)中,Zookeeper、Nacos、Consul這些注冊中心在Dubbo中的使用,我們都會(huì)一一進(jìn)行分析!
? ? ? ? 需要注意的是:上述注冊中心,他們的核心功能大致像是,但是他們的實(shí)現(xiàn)過程是有底層性差異的,但是總體差異不大!
三:DubboAdmin介紹
1:DubboAdmin簡介
????????Dubbo Admin是Apache Dubbo服務(wù)治理和管理系統(tǒng)的?部分。它主要幫我們管理的是服務(wù)相關(guān)的內(nèi)容。
????????DubboAdmin最為重要的內(nèi)容:DubboAdmin提供了?套?于服務(wù)治理的Web界面,讓我們可以更?便地對Dubbo系統(tǒng)進(jìn)?管理和監(jiān)控。
????????新版本的Dubbo Admin是基于VUE、SpringBoot開發(fā)的,是一套前后端分離的Web系統(tǒng)。
2:DubboAdmin的主要功能
?????????服務(wù)管理:Dubbo Admin可以查看所有提供者和消費(fèi)者的詳細(xì)信息,?包括服務(wù)地址、方法、參數(shù)等。
????????路由規(guī)則:Dubbo Admin可以根據(jù)需要設(shè)置路由規(guī)則,將請求導(dǎo)向特定的服務(wù)提供者。?
????????動(dòng)態(tài)配置:Dubbo Admin可以動(dòng)態(tài)地改變服務(wù)的配置,包括負(fù)載均衡策略、容錯(cuò)策略等。
????????權(quán)限控制:Dubbo Admin?持對訪問進(jìn)行權(quán)限控制,只有獲得授權(quán)的用戶才能訪問特定的服務(wù)。
????????監(jiān)控和統(tǒng)計(jì):Dubbo Admin可以收集并展示服務(wù)的運(yùn)行數(shù)據(jù),包括調(diào)用次數(shù)、響應(yīng)時(shí)間等。
????????綜上所述:開發(fā)者通過Dubbo Admin可以更?便地進(jìn)?服務(wù)治理和管理,提高服務(wù)的可?性和可維護(hù)性。
????????注意:我們本次課程學(xué)習(xí)的是,是DubboAdmin的最新版本:0.5.0
? ? ? ? 添加微信:DaShuDeveloper 拉你進(jìn)我們的技術(shù)交流群,我們一起討論Dubbo,一起學(xué)習(xí)Dubbo,一起干翻Dubbo!文章來源:http://www.zghlxwxcb.cn/news/detail-752180.html
文章來源地址http://www.zghlxwxcb.cn/news/detail-752180.html
到了這里,關(guān)于Dubbo引入Zookeeper等注冊中心簡介以及DubboAdmin簡要介紹,為后續(xù)詳解Dubbo各種注冊中心做鋪墊!的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!