性能文章>Dubbo网络通讯篇概述>

Dubbo网络通讯篇概述原创

2年前
275201

从本节开始将深入学习Dubbo网络通讯的底层实现细节,在深入学习Dubbo网络模型时,首先应从整体上了解Dubbo的网络通讯模型、线程模型是怎样的?下图是Dubbo官方给出的线程模型:

image1.jpeg

涉及如下方面:

  • 网络调用客户端。
  • 网络调用服务端。
  • 网络传输,编解码、序列化。
    下面给出与上述网络模型对应的详细类图:

image2.jpeg

上述类做一个简单的介绍,后续篇章将会一一分析。
1、基础接口
Resetable 可重置。
Endpoint 端(服务端、客户端基接口)
2、服务端
Server 服务端根接口
ExchangeServer 服务端交换机,默认实现Server,内部持有具体Server的实现。
HeaderExchangeServer 基于协议头的服务端交互机。
3、客户端
Channel 客户端通道描述接口。
Client 客户端基础接口,继承自Endpoint,Channel,主要定义重连接口。
4、传输层
Transporter
定义根据URL创建服务端或客户端,内部实现就是构建Server,Client对象。
5、编解码
Codec2 定义编解码对应的接口。
下面以Dubbo协议为例,底层网络通信组建基于Netty,Dubbo协议创建服务端的流程如下所示:
image3.jpeg

下面还是以Dubbo协议为例,底层网络通信组件基于Netty,Dubbo协议消费端(客户端)建立网络流程图如下:
image4.jpeg

上述这些流程图将会在后文的服务端、客户端启动流程时重点分析。

点赞收藏
分类:标签:
丁威
请先登录,感受更多精彩内容
快去登录吧,你将获得
  • 浏览更多精彩评论
  • 和开发者讨论交流,共同进步

为你推荐

Redis stream 用做消息队列完美吗?

Redis stream 用做消息队列完美吗?

Netty源码解析:writeAndFlush

Netty源码解析:writeAndFlush

1
0