官术网_书友最值得收藏!

3.1.2 核心流程介紹

1.服務發布

將服務提供者的實現類(例如ProductServiceImpl)及其配置屬性參數包裝成ServiceBean代理類,ServiceConfig類拿到代理類及拼接完成的參數URL信息后,再通過ProxyFactory工廠類的getInvoker函數生成ProductServiceImpl的AbstractProxyInvoker實例,以完成服務到Invoker的轉化。

協議處理類(例如DubboProtocol)的export函數將Invoker類轉換成Exporter類,并創建RPC Server端實例(例如NettyServer)、監聽指定端口、接收客戶端的請求。

Registry類型的Invoker注冊服務的名字和URL參數信息到注冊中心。

2.服務消費

ReferenceBean的getObject函數產生服務消費者及其配置信息的代理類,ReferenceConfig在createProxy函數中連接注冊中心,發現遠程服務并通過Protocol的refer函數把服務提供者實例轉化成Invoker。

在Invoker中利用Proxyfactory函數剝離出服務提供者的代理信息、創建RPC客戶端實例、連接服務提供端、接收調用返回的結果。

主站蜘蛛池模板: 桂东县| 墨竹工卡县| 恩施市| 古蔺县| 北海市| 普洱| 汝阳县| 林周县| 南康市| 当雄县| 南丰县| 安仁县| 安新县| 逊克县| 株洲县| 安龙县| 龙游县| 岐山县| 阿克苏市| 芮城县| 青海省| 满洲里市| 文成县| 舞阳县| 建宁县| 苏尼特左旗| 满洲里市| 忻州市| 中超| 土默特左旗| 枞阳县| 瑞金市| 泰顺县| 大宁县| 基隆市| 于都县| 如东县| 镶黄旗| 玉田县| 安龙县| 伊春市|