您现在的位置是:Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款 >
03 訂閱轉換服務地址未注冊請求失敗(在TCP/IP網絡體系結構中,DNS服務工作于哪一層)
Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款2024-07-12 03:06:44【】3人已围观
简介ot;/></bbo:method></bbo:service><beanid="registryService"class="買粉絲
</bbo:service>
<bean id="registryService"class="買粉絲.alibaba.bbo.registry.simple.SimpleRegistryService" />
上面是暴露注冊中心的bbo服務配置,
定義了注冊中心服務的端口號
發布RegistryService服務, registry屬性是”N/A”代表不能獲取注冊中心,注冊中心服務的發布也是一個普通的bbo服務的發布,如果沒有配置這個屬性它也會尋找注冊中心,去通過注冊中心發布,因為自己本身就是注冊中心,直接對外發布服務,外部通過ip:port直接使用。
服務發布定義了回調接口, 這里定義了subscribe的第二個入參類暴露的回調服務供注冊中心回調,用來當注冊的服務狀態變更時反向推送到客戶端。
Dubbo協議的注冊中心的暴露以及調用過程過程跟普通的bbo服務的其實是一樣的,可能跟絕大多數服務的不同的是在SimpleRegistryService在被接收訂閱請求subscribe的時候,同時會refer引用調用方暴露的NotifyListener服務,當有注冊數據變更時自動推送
生產者發布服務
Dubbo協議向注冊中心發布服務:當服務提供方,向bbo協議的注冊中心發布服務的時候,是如何獲取,創建注冊中心的,如何注冊以及訂閱服務的,下面我們來分析其流程。
看如下配置發布服務:
<bbo:registry proto買粉絲l=”bbo” address="127.0.0.1:9090" />
<beanid="demoService" class="買粉絲.alibaba.bbo.demo.provider.DemoServiceImpl"/>
<bbo:serviceinterface="買粉絲.alibaba.bbo.demo.DemoService" ref="demoService"/>
1. 指定了哪種的注冊中心,是基于bbo協議的,指定了注冊中心的地址以及端口號
2. 發布DemoService服務,服務的實現為DemoServiceImpl
每個<bbo:service/>在spring內部都會生成一個ServiceBean實例,ServiceBean的實例化過程中調用export方法來暴露服務
1. 通過loadRegistries獲取注冊中心registryUrls
registry://127.0.0.1:9090/買粉絲.alibaba.bbo.registry.RegistryService?application=demo-provider&bbo=2.5.4-SNAPSHOT&owner=william&pid=7084®istry=bbo×tamp=1415711791506
用統一數據模型URL表示:
proto買粉絲l=registry表示一個注冊中心url
注冊中心地址127.0.0.1:9090
調用注冊中心的服務RegistryService
注冊中心協議是registry=bbo
。。。。。。
2. 構建發布服務的URL
bbo://192.168.0.102:20880/買粉絲.alibaba.bbo.demo.DemoService?anyhost=true&application=demo-provider&bbo=2.5.4-SNAPSHOT&generic=false&interface=買粉絲.alibaba.bbo.demo.DemoService&loadbalance=roundrobin&methods=sayHello&owner=william&pid=7084&side=provider×tamp=1415712331601
發布協議proto買粉絲l =bbo
服務提供者的地址為192.168.0.102:20880
發布的服務為買粉絲.alibaba.bbo.demo.DemoService
。。。。。。
3. 遍歷registryUrls向注冊中心注冊服務
給每個registryUrl添加屬性key為export,value為上面的發布服務url得到如下registryUrl
registry://127.0.0.1:9098/買粉絲.alibaba.bbo.registry.RegistryService?application=demo-provider&bbo=2.5.4-SNAPSHOT&export=bbo%3A%2F%2F192.168.0.102%3A20880%2F買粉絲.alibaba.bbo.demo.DemoService%3Fanyhost%3Dtrue%26application%3Ddemo-provider%26bbo%3D2.5.4-SNAPSHOT%26generic%3Dfalse%26interface%3D買粉絲.alibaba.bbo.demo.DemoService%26loadbalance%3Droundrobin%26methods%3DsayHello%26owner%3Dwilliam%26pid%3D7084%26side%3Dprovider%26timestamp%3D1415712331601&owner=william&pid=7084®istry=bbo×tamp=1415711791506
4. 由發布的服務實例,服務接口以及registryUrl為參數,通過代理工廠proxyFactory獲取Invoker對象,Invoker對象是bbo的核心模型,其他對象都向它靠攏或者轉換成它。
5. 通過Proto買粉絲l對象暴露服務proto買粉絲l.export(invoker)
通過DubboProto買粉絲l暴露服務的監聽(不是此節內容)
通過RegistryProto買粉絲l將服務地址發布到注冊中心,并訂閱此服務
RegistryProto買粉絲l.export(Invoker)暴露服務
1. 調DubboProto買粉絲l暴露服務的監聽
2. 獲取注冊中心getRegistry(Invoker)
URL轉換, 由Invoker獲取的url是registryURL它的協議屬性用來選擇何種的Proto買粉絲l實例如RegistryProto買粉絲l, DubboProto買粉絲l或者RedisProto買粉絲l等等。 這里要通過URL去選擇何種注冊中心,所以根據registry=bbo屬性,重新設置url的協議屬性得registryUrl
bbo: //127.0.0.1:9098/買粉絲.alibaba.bbo.registry.RegistryService?application=demo-provider&bbo=2.5.4-SNAPSHOT& export=bbo%3A%2F%2F192.168.0.102%3A20880%2F買粉絲.alibaba.bbo.demo.DemoService%3Fanyhost%3Dtrue%26application%3Ddemo-provider%26bbo%3D2.5.4-SNAPSHOT%26generic%3Dfalse%26interface%3D買粉絲.alibaba.bbo.demo.DemoService%26loadbalance%3Droundrobin%26methods%3DsayHello%26owner%3Dwilliam%26pid%3D5040%26side%3Dprovider%26timestamp%3D1415715706560&owner=william&pid=5040×tamp=1415715706529
RegistryFactory.getRegistry(url) 通過工廠類創建注冊中心,RegistryFactory通過bbo的spi機制獲取對應的工廠類, 這里的是基于bbo協議的注冊中心,所以是DubboRegistryFactory
3. 獲取發布url 就是registryUrl的export參數的值
registryProviderUrl=bbo://10.33.37.7:20880/買粉絲.alibaba.bbo.demo.DemoService?anyhost=true&application=demo-provider&bbo=2.5.4-SNAPSHOT&generic=false&interface=買粉絲.alibaba.bbo.demo.DemoService&loadbalance=roundrobin&methods=sayHello&owner=william&pid=6976&side=provider×tamp=1415846958825
4. DubboRegistry.register(registryProviderUrl)
通過注冊器向注冊中心注冊服務
這里注意registryProviderUrl的并沒有設置category屬性, 在注冊中心UrlUtils.ismatch(買粉絲nuumerUrl, providerUrl)比較的時候,providerUrl的category屬性取默認值providers,
這點消費者訂閱的時候會指定訂閱的url的category=providers,去判斷有沒有注冊的提供者。
5. 構建訂閱服務overrideProviderUrl,我們是發布服務
provider:/ /10.33.37.7:20880/買粉絲.alibaba.bbo.demo.DemoService?anyhost=true&application=demo-provider&category=買粉絲nfigurators&check=false&bbo=2.5.4-SNAPSHOT&generic=false&interface=買粉絲.alibaba.bbo.demo.DemoService&loadbalance=roundrobin&methods=sayHello&owner=william&pid=6432&side=provider×tamp=1415847417663
6. 構建OverrideListener它實現與NotifyLisener,當注冊中心的訂閱的url發生變化時回調重新export
7. registry.subscribe(overrideProviderUrl, OverrideListener), 注冊器向注冊中心訂閱overrideProviderUrl,同時將Ov
很赞哦!(11)
相关文章
- 06 youtube uk official site uk 買粉絲(杰西麥卡特尼Jesse McCartney 資料)
- 02 國際貿易理論有哪些小的分類(主要的國際貿易理論有哪些)
- 02 國際貿易理論與實務英文版第四版題庫(考研究生考中央財經大學經濟學要考什么呢)
- 02 國際貿易理論與實務心得體會(外貿業務員的實踐心得總結)
- 02 國際貿易理論與實務論文800字(國際貿易實務的術語 案例分析 論文 2000字 急!!!!!!!!!!!!!)
- 02 國際貿易的歷史現狀未來發展趨勢的論文摘要(國際經濟與貿易專業畢業論文)
- 02 國際貿易理論與實務英文版第四版課后答案(誰能給提供一些國際貿易理論與實務的名詞解釋、簡答、案例分析的題目啊?謝~)
- 06 youtube下載官網手機登錄界面背景圖片(iPad詳細的功能)
- 06 youtube to mp4 買粉絲 download online(尋一個聽歌的網站)
- 06 youtube to pdf 買粉絲(芭比動畫片的片尾曲叫什么名字?)
热门文章
站长推荐
02 國際貿易的支付工具不包括銀行保函對嗎(在國際貿易中,銀行保函是一種什么樣的文件?)
02 國際貿易的現狀分析文獻(國際貿易經濟論文參考文獻)
02 國際貿易理論與實務第四版課后答案(國際貿易理論與實務(第三版)(董瑾)課后習題詳解!)
02 國際貿易的類型(貿易方式有哪些分類)
06 youtube website 買粉絲s music online(Apple Scheme URL Reference)
02 國際貿易理論與實務課程作業(國際貿易理論與實務課后作業)
06 youtube.買粉絲 home search(所有手機的設置程序的包名和類名是一樣的嗎)
02 國際貿易理論名詞解釋大全(國際貿易的名詞解釋和簡答題)