Dubbo 框架设计一共划分了 10 个层:
服务接口层(Service)
:该层是与实际业务逻辑相关的,根据服务提
供方和服务消费方的业务设计对应的接口和实现。
配置层(Config)
:对外配置接口,以 ServiceConfig 和
ReferenceConfig 为中心。
服务代理层(Proxy
):服务接口透明代理,生成服务的客户端 Stub
和服务器端 Skeleton。
服务注册层(Registry)
:封装服务地址的注册与发现,以服务 URL
为中心。
集群层(Cluster)
:封装多个提供者的路由及负载均衡,并桥接注册
中心,以 Invoker 为中心。
监控层(Monitor)
:RPC 调用次数和调用时间监控。
远程调用层(Protocol)
:封将 RPC 调用,以 Invocation 和 Result
为中心,扩展接口为 Protocol、Invoker 和 Exporter。
信息交换层(Exchange)
:封装请求响应模式,同步转异步,以
Request 和 Response 为中心。
网络传输层(Transport)
:抽象 mina 和 netty 为统一接口,以
Message 为中心。