dubbo服務暴露 本地暴露(二)

2021-10-05 02:31:41 字數 870 閱讀 5000

serviceconfig類:

private

void

doexporturlsfor1protocol

(protocolconfig protocolconfig, list

registryurls)}...}

我們進入這個方法:

我們先看proxyfactory.getinvoker()方法,它是生成乙個invoker物件,注意看下結果,匯出本地服務的invoker是injvm:

在這個構造器中,利用exportermap快取了exporter。

總結

本地暴露做了哪些事情:

exportlocal 方法比較簡單,首先根據 url 協議頭決定是否匯出服務。若需匯出,則建立乙個新的 url 並將協議頭、主機名以及埠設定成新的值。然後建立 invoker,並呼叫 injvmprotocol 的 export 方法匯出服務,就是建立了乙個 injvmexporter物件,利用exportermap快取了exporter。

思考下為什麼需要本地暴露

Dubbo服務暴露流程

本篇部落格,需要先看上篇 dubbo服務暴露流程 先看 dubbonamespacehandler類的 init方法,在定義屬性的時候有這樣一行 this registerbeandefinitionparser service new dubbobeandefinitionparser servi...

dubbo 服務暴露 路徑問題

配置dubbo的時候看到了乙個非常奇怪的配置 問題1 埠是否重複?問題2 jaxrs不在文件中,協議效果是什麼?spring在容器載入完畢後使用監聽者模式推送event package com.alibaba.dubbo.config.spring 在解析dubbo spring.xml的時候已經載...

dubbo服務暴露的原理

使用dubbo也有一段時間了,一開始啃文件的時候都是做的書面筆記,現在搬運到部落格來。1 afterpropertiesset 呼叫 setprovider setmodules setprotocol,將配置的資訊都儲存起來 3 doexport執行暴露 4 doexporturls執行暴露位址,...