Zookeeper- 客户端和服务端进程
2018-12-25 本文已影响0人
沐兮_d64c
1,server进程与client进程
1)使用Java命令行启动Server进程,main class
image.pngQuorumPeerMain
,配置文件是zoo.cfg
。
zk_01/bin/zkServer.sh start zk_01/conf/zoo.cfg
org.apache.zookeeper.server.quorum.QuorumPeerMain zk_01/conf/zoo.cfg
dataDir=/tmp/zookeeper2189 集群模式,需要在dataDir中配置myid文件,id为server.id号
2)使用客户端连接Server进程。
使用Java命令行启动客户端进程,main classZooKeeperMain
-server 127.0.0.1:2189
zk_01/bin/zkCli.sh -server 127.0.0.1:2189
image.png
2,Server端过程简介
1)QuorumPeerMain main方法,接受命令行参数,zoo.cfg配置文件参数,初始化并且运行。
image.png
2)解析配置文件、启动定时清理任务。
3)如果有配置文件,并且配置了server,集群模式启动。args.length == 1 && config.servers.size() > 0
image.png
否则in standalone mode
image.png
3,Client连接过程简介
1)解析参数
image.pngparseOptions
,连接到zkconnectToZK
。
2)创建ZooKeeper对象
image.png
3)创建客户端Connection Object
image.png
4)启动sendThread和eventThread
image.png