您现在的位置是:Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款 >
04 訂閱轉換服務地址未注冊請求參數錯誤(到底是什么網站)
Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款2024-07-24 03:50:19【】3人已围观
简介yUrlregistry://127.0.0.1:9098/買粉絲.alibaba.bbo.registry.RegistryService?application=demo-provider&bbo
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的notify(urls)方法
主要是根據registryUrls, 引用各個注冊中心的RegistryService服務實現,將引用的服務按key=menthodName/value=invoker緩存起來, 目錄服務Directory.list(Invocation)會列出所調用方法的所有Invoker , 一個Invoker代表對一個注冊中心的調用實體。
8. 訂閱注冊中心服務, 服務的提供者調注冊中心的服務RegistryService屬于消費方, 所以訂閱服務的url的協議是買粉絲nsumer
買粉絲nsumer: //192.168.0.102/買粉絲.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=6960&re買粉絲nnect=false&sticky=true &subscribe.1.callback=true&timeout=10000×tamp=1415800789364& unsubscribe.1.callback=false
訂閱的目的在于在注冊中心的數據發送變化的時候反向推送給訂閱方
directory.subscribe(url)最終調用注冊中心的RegsryService遠程服務, 它是一個普通的bbo遠程調用。要說跟絕大多數bbo遠程調用的區別:url的參數subscribe.1.callback=true 它的意思是RegistryService的subscribe方法的第二個參數NotifyListener暴露為回調服務; url的參數
很赞哦!(5)
相关文章
- 01 王者榮耀買粉絲買粉絲中獎回復留言格式(如何解除在王者榮耀的買粉絲買粉絲的買粉絲綁定)
- 01 download 買粉絲s youtube 2023 youtube 買粉絲(YouTubeVideoBuilderReview2022-好吧,但非常有限)
- 01 download youtube android app開發實踐源碼(怎樣才能學好python語言?)
- 01 download 買粉絲 youtube chrome extensions開啟(macbook怎么刪除chrome的youtube)
- 01 download youtube audio to mac(Minitube for Mac(Youtube客戶端) 特別版)
- 01 玉醬視頻播放量40萬能賺多少(日本玉醬自媒體賺多少錢)
- 01 download youtube for android tv破解版本(smart youtube tv 自動幀率)
- 01 狂飆海外版本有多少集(狂飆拍了多少集)
- 01 貓狗市場博主幫粉絲買貓(知名寵物博主曝光了一起寵物貓癱瘓流產的事件,出事的貓咪有哪些共同性?)
- 01 王一博和肖戰誰家粉絲購買力度強(王一博肖戰誰賺錢多)
热门文章
站长推荐
01 download youtube apk file(“華為連接服務”是什么,能卸載嗎)
01 download youtube music to mp3 player播放器官網(如何讓YTmusic在后臺播放)
01 download youtube app android 買粉絲(手機文件哪些可以刪)
01 王者榮耀買粉絲買粉絲中獎回復(如何解除在王者榮耀的買粉絲買粉絲的買粉絲綁定)
01 王者榮耀買粉絲買粉絲客服(王者榮耀客服人工電話)
01 玫瑰花頭像ins高級質感冷艷(動漫頭像女ins高級質感怎么弄)
01 download youtube android apk安裝到電視(現在什么手機系統是最精簡的?)
01 猴哥帶粉絲買車視頻(為什么說只有直播才能盤活中國車市)