Dubbo系列
2019-09-27 本文已影响0人
昙花未现
Dubbo提供了三个关键功能:
基于接口的远程调用;
容错和负载均衡;
自动服务注册和发现。
整个Dubbo体系共分为十层:
Service层:这一层和业务实现相结合,根据具体业务设计服务提供者和消费者的实现类和接口类。
Config层:配置信息层,由Spring解析服务提供者和消费者的配置信息,然后封装到ServiceConfig和ReferenceConfig中。
Proxy层:服务代理层,这一层主要是结合SPI机制,动态选取不同的配置类。
Registry层:服务注册层,主要负责注册与发现Dubbo服务,以及对Dubbo服务的监听。
Cluster层:服务集群层,负责服务的路由、负载及失败重试策略。
Protocol层:在这层会进行相关协议的转换与过滤。
Exchange层:封装请求响应模式,同步转异步。
Transport层:网络传输层,抽象Netty、Mina为统一接口,在这一层进行真正的数据传输。
Serialize层:序列化层,根据不同的协议对数据进行序列化。
架构体系
Dubbo的架构体系采用的是微核+插件,其中最核心的机制是采用了SPI,为接口寻找服务实现的机制。