ZK客户端核心类ClientCnxn分析

核心功能

  ClientCnxn是ZK客户端的核心类,负责客户端与服务器之间的通信,主要包括两个主要成员SendThread和EventThread,其功能如下图所示:
ZK客户端核心类ClientCnxn分析

建立连接过程

  1. 创建ClientCnxn实例,并启动;
    ZK客户端核心类ClientCnxn分析
  2. SendThread开始建立连接,TCP层创建Socket;
    ZK客户端核心类ClientCnxn分析

ZK客户端核心类ClientCnxn分析
3. 应用层发送创建连接请求;
ZK客户端核心类ClientCnxn分析
4. 服务器处理连接请求,如果sessionId不为空则会尝试复用对应的session,否则创建新的session;
ZK客户端核心类ClientCnxn分析
5. 客户端读取连接请求的结果;
ZK客户端核心类ClientCnxn分析