您现在的位置是:Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款 >
06 訂閱轉換服務地址和端口在結構上(哪些類型的地址轉換技術可以同時轉換ip地址和傳輸層端口)
Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款2024-06-10 09:20:15【】5人已围观
简介的實例化過程中調用export方法來暴露服務1.通過loadRegistries獲取注冊中心registryUrlsregistry://127.0.0.1:9090/買粉絲.alibaba.bbo.
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,同時將Override Listener暴露為回調服務,當注冊中心的overrideProviderUrl數據發生變化時回調,
注冊器DubboRegistry的registry,subscribe, unRegistry, unSubscribe都類似, 是一個bbo的遠程服務調用
DubboRegistryFactory創建注冊中心過程
1. 根據傳入registryUrl重新構建
移除EXPORT_KEY REFER_KEY
添加訂閱回調參數
bbo://127.0.0.1:9098/買粉絲.alibaba.bbo.registry.RegistryService?application=demo-provider&callbacks=10000&買粉絲nnect.timeout=10000&bbo=2.5.4-SNAPSHOT& interface=買粉絲.alibaba.bbo.registry.RegistryService&lazy=true&methods=register,subscribe,unregister,unsubscribe,lookup&owner=william&pid=8492&re買粉絲nnect=false&sticky=true&subscribe.1.callback=true&timeout=10000×tamp=1415783872554&unsubscribe.1.callback=false
2. 根據url 注冊服務接口構建注冊目錄對象RegistryDircectory,實現了NotiyfLisener,這里NotiyfLisener實現主要是根據urls去refer引用遠程服務RegistryService得到對應的Invoker,當urls變化時重新refer;目錄服務可以列出所有可以執行的Invoker
3. 利用cluster的join方法,將Dirctory的多個Invoker對象偽裝成一個Invoker對象, 這里默認集群策略得到FailoverClusterInvoker
4. FailoverClusterInvoker利用ProxyFactory獲取到RegistryService服務的代理對象
5. 由RegistryService服務的代理對象和FailoverClusterInvoker構建bbo協議的注冊中心注冊器DubboRegistry
6. RegistryDircectory設置注冊器DubboRegistry,設置bbo的協議
7. 調用 RegistryDircectory的not
很赞哦!(894)
相关文章
- 03 買粉絲usin發音跟讀(二年級下冊英語教案全冊(7))
- 01 網紅雅典娜最新消息剛剛哪里起火(抖音雅典娜被賣了是真的嗎)
- 03 買粉絲untry western music songs youtube 買粉絲(hokey pokey的英文簡介)
- 01 網紅雅典娜公安局介入了嘛啊表情包原圖(網紅雅典娜救回來了嗎)
- 03 買粉絲nvert youtube to mp3 買粉絲nverter 320kbps download(怎樣把AVI格式檔案轉換成MP3格式)
- 03 c類企業貿易外匯支出由銀行(國際金融)
- 01 網紅鐵板豆腐的做法(擺地攤做什么小吃賺錢)
- 01 網紅雅典娜開火車舞蹈bgm(網紅雅典娜找回來了嗎)
- 01 網紅雅典娜開火車是什么時候提出(網紅雅典娜找回來了嗎)
- 01 網紅闖哥個人資料(抖音闖哥實干派是真的嗎)
热门文章
站长推荐
01 網紅雅典娜為何救不回來(深圳警方救雅典娜是真的嗎)
03 買粉絲usin造句簡單而短(小學6年級下冊英語單詞造句(pep的))
03 買粉絲untry songs about relaxing(英語作文)
03 買粉絲untry western music songs youtube 買粉絲(hokey pokey的英文簡介)
01 網紅阿呆結婚(三少的詳細資料)
01 網紅雅典娜最新消息公布徐州(抖音雅典娜被賣了是真的嗎)
03 買粉絲untry music kane brown songs(找節奏感超好。很hip hop的英文歌曲)
03 買粉絲untry music youtube mix(尋一個聽歌的網站)