- 中臺落地手記:業務服務化與數據資產化
- 張亮
- 511字
- 2021-09-08 16:35:26
3.1.1 架構分層剖析
(1)Service層
提供服務提供者、服務消費者角色定位的接口與方法,兩個角色在某一次通信過程中是確定的,但是在不同的通信過程中,角色是可以互換的。
(2)Config層
提供對外依賴的配置管理,各服務自身的配置管理等功能。
(3)Proxy層
提供服務的代理,服務提供者、服務消費者都會使用代理來通信,讓遠程調用以及本地調用都可以對用戶透明化。
(4)Registry層
提供了服務的注冊與發現功能,強大的參數service URL就是在此層構建的。
(5)Cluster層
封裝了集群的功能,例如多個服務提供者實例的負載均衡、路由等,對服務消費者來說是透明的,只需要與一個服務提供者通信即可。
(6)Monitor層
提供了RPC調用的次數、執行時間等指標管理與監控功能。
(7)Protocol層
實現了真正的RPC過程,其中Invoker是暴露服務和引用服務的主功能入口,它負責Invoker的生命周期管理。Invoker是Dubbo的核心模型,其他模型都向它靠攏或轉換成它。它代表一個可執行體,可向它發起invoke調用,它有可能是一個本地的實現或是一個遠程的實現,也可能是一個集群實現。
(8)Exchange層
封裝了請求/響應消息、同步/異步轉換、調用/交互通信等過程,給用戶提供統一視圖。
(9)Transport層
抽象了通信消息在傳輸層面的處理過程,透明化了底層通信框架。
(10)Serialize層
提供了序列化管理方面的功能。