Dubbo的工作原理
第一层
Service层,接口层, 给服务提供者和消费者来实现的
第二层
config层,配置层,主要是对dubbo进行各种配置的
第三层
层,服务代理层,透明生成客户端的stub和服务端的skeleton
第四层
registry层,服务注册层,负责服务的注册与发现
第五层
cluster层,集群层,封装多个服务提供这的路由以及负载均衡,将多个实例组合成一个服务
第六层
monitor层,监控层,对RPC接口的调用次数和调用时间进行监控
第七层
protocol层,远程调用层,封装RPC调用
第八层
exchange层,信息交换层, 封装请求响应模式,同步转异步
第九层
transport层,网络传输层,抽象mina和netty为统一接口
第十层
serialize层,数据序列化层
Dubbo的工作流程
- Provider 向注册中心去注册
- consumer从注册中心订阅服务,注册中心会通知consumer注册好的服务
- consumer调用provider
- consumer 和 provider都异步的通知监控中心
注册中心挂了可以继续通讯吗
可以的,因为刚开始初始化的时候,消费者会将提供者的地址等信息拉取到本地,所以注册中心挂了可以继续通信