zookeeper
lang20150928
stay hungry stay foolish
展开
-
ZooKeeper服务端源码解析(单机模式)
/** * To start the replicated server specify the configuration file name on the * command line. * * @param args path to the configfile */public static void main(String[] args) { QuorumPeerMai...原创 2020-04-01 21:47:42 · 419 阅读 · 0 评论 -
ZooKeeper客户端源码解读(网络I/O)
org.apache.zookeeper.ClientCnxn是ZooKeeper客户端的核心工作类,负责维护客户端与服务端之间的网络连接并进行一系列网络通信。此处分析一下内部的工作原理。首先上图:PacketPacket是ClientCnxn内部定义的一个对协议层的封装,作为ZooKeeper中请求与响应的载体。从上图可以看出,Packet中包含了请求头、响应头、请求体、响应体、节点路...原创 2020-03-30 20:37:29 · 397 阅读 · 0 评论 -
ZooKeeper客户端源码解读(会话创建工作机制)
初始化阶段// 1. 初始化ZooKeeper对象// 通过调用ZooKeeper的构造方法来实例化一个ZooKeeper对象,在初始化的过程中,会创建一个// 客户端的Watcher管理器:ClentWatchManagerpublic ZooKeeper(String connectString, int sessionTimeout, Watcher watcher, boolean...原创 2020-03-30 20:37:05 · 157 阅读 · 0 评论 -
Zookeeper客户端源码解读(大致流程)
在zookeeper安装目录bin目录下有客户端、服务端开启的脚本打开这个脚本,有如下信息:"$JAVA" "-Dzookeeper.log.dir=${ZOO_LOG_DIR}" "-Dzookeeper.root.logger=${ZOO_LOG4J_PROP}" \ -cp "$CLASSPATH" $CLIENT_JVMFLAGS $JVMFLAGS \ org...原创 2020-03-30 20:36:25 · 360 阅读 · 0 评论