源码分析Dubbo网络通讯篇概要总结(类图一览、服务端、客户端网络构造流程一览)
从本节开始将开始深入学习 Dubbo 网络通讯的底层实现细节,在深入学习 Dubbo 网络模型时,首先应从整体上了解 Dubbo 的网络通讯模型、线程模型是怎样的?下图是 Dubbo 官方给出的线程模型: 涉及如下方面: 网络调用客户端。 网络调用服务端。 网络传输,编解码、序列化。 网络服务端转发模型、线程池。 下面给出与上述网络模型对应的详细类图: 上述类做一个简单的结束,后续篇章将会一一详细分析。 基础接口 Resetable 可重置。 Endpoint 端(服务端、客户端基接口) 服务端 Server 服务端根接口 ExchangeServer 服务端交换机,默认实现Server,内部持有具体Server的实现。 HeaderExchangeServer 基于协议头的服务端交互机。 客户端 Channel 客户端通道描述接口。 Client 客户端基础接口,继承自Endpoint,Channel,主要定义重连接口。 传输层 Transporter 定义根据URL创建服务端或客户端,内部实现就是构建Server,Client对象。 编解码 Codec2 定义编解码对应的接口。 下面以Dubbo协议为例,底层网络通信组建基于Netty,Dubbo协议创建服务端的流程如下所示: 下面还是以Dubbo协议为例,底层网络通信组件基于Netty,Dubbo协议消费端(客户端