ES-TCPTransport 1

来源:互联网 发布:网王之数据大师 编辑:程序博客网 时间:2024/06/13 09:48

本节目标:

主要为了掌握TCPTransport交互过程已经熟悉其中相关的API;为之后自定义ES交互协议做储备。

TCPTransport与Netty4Transport简介

TCPTransport是Netty4Transport抽象,它主要以节点为粒度定义了通信的过程,包括:ping任务、连接建立,发送信息和协议结构的基本封装等。

TCPTransport的交互过程及相关API

交互过程图如下:



    协议交互描述(下述请求端的TCPTransport简称CN,服务端的TCPTransport简称SN):

        CN端先与SN端建立连接(connectToNode);在连接过程中CN会发送handshake协议与SN端完成连接。

         然后CN端构造并发送请求(sendRequest)给到SN,

         SN接收请求信息(handleRequest)。

         SN端处理请求信息后将结果返回给CN(sendResponse)。

         CN端接收到SN的响应(handleResponse)。

ping任务描述:

    ping任务主要是确保SN端Node还是存活;此任务开启后会定时向CN发送ping请求包,SN会响应此ping请求以告知node还是存活状态;

核心API如下:

TCPTransport

+connectToNode (连接到Node)

+sendRequest (发送请求信息)

+receivedMessage (接受信息)

     -handleRequest (接收请求信息)

      -handleResponse (接收响应信息)

+sendResponse (发送响应信息)

+pingSchedule (ping任务)

原创粉丝点击