天天看點

dubbo原理

文章目錄

  • ​​1.架構設計​​
  • ​​2.标簽解析​​
  • ​​3.服務暴露​​
  • ​​4.服務引用​​
  • ​​5.服務調用​​
  • ​​6.netty的架構​​

1.架構設計

dubbo原理

config 配置層:對外配置接口,以 ServiceConfig, ReferenceConfig 為中心,可以直接初始化配置類,也可以通過 spring 解析配置生成配置類

proxy 服務代理層:服務接口透明代理,生成服務的用戶端 Stub 和伺服器端 Skeleton, 以 ServiceProxy 為中心,擴充接口為 ProxyFactory

registry 注冊中心層:封裝服務位址的注冊與發現,以服務 URL 為中心,擴充接口為 RegistryFactory, Registry, RegistryService

cluster 路由層:封裝多個提供者的路由及負載均衡,并橋接注冊中心,以 Invoker 為中心,擴充接口為 Cluster, Directory, Router, LoadBalance

monitor 監控層:RPC 調用次數和調用時間監控,以 Statistics 為中心,擴充接口為 MonitorFactory, Monitor, MonitorService

protocol 遠端調用層:封裝 RPC 調用,以 Invocation, Result 為中心,擴充接口為 Protocol, Invoker, Exporter

exchange 資訊交換層:封裝請求響應模式,同步轉異步,以 Request, Response 為中心,擴充接口為 Exchanger, ExchangeChannel, ExchangeClient, ExchangeServer

transport 網絡傳輸層:抽象 mina 和 netty 為統一接口,以 Message 為中心,擴充接口為 Channel, Transporter, Client, Server, Codec

serialize 資料序列化層:可複用的一些工具,擴充接口為 Serialization, ObjectInput, ObjectOutput, ThreadPool

2.标簽解析

dubbo原理

3.服務暴露

dubbo原理

4.服務引用

dubbo原理

5.服務調用

dubbo原理

6.netty的架構

繼續閱讀