Cccc杨

导航

Zookeeper的基本安装和操作

一、注意事项:

  在zoo.cfg文件中设置的zkDir位置下创建zkDate目录,并且增加一个 myid 的文件,文件内容为当前节点的zookeeper的编号。

 

二、基本操作:

1.  ls /

  查看当前znode所包含的内容

 

 

2.  ls2 /

  查看当前znode节点的详细数据。

 

3.create /节点名称  数据

  zookeeper中创建节点必须要有数据 否则无法创建。

 

4.get /节点名称/节点名称

  取出使用create存入的数据

 

5.create  -e  /节点名称  创建短暂节点

 

6.create -s /节点名称   创建带序号的节点

 7.set /节点名称 数据  修改节点数据

 

8.get /节点名称 watch   监听节点数据变化(注册一次有效一次)

 

9.ls /节点名称 watch   监听节点的子节点变化(路径变化)

 

10.删除

  delete   删除节点的子节

  rmr  删除整个节点

 

11.stat /节点名称

  整个节点的详细信息。

 

 子节点数据长度和子节点的数量

 

三、监视器原理

  1.首先有一个main线程。

  2.在main线程中创建Zookeeper客户端,这时就会创建两个线程,一个负责网络连接通信(connet),一个负责监听(listener)。

  3.通过connect线程将注册的监听事件发送给zookeeper。

  4.在zookeeper的注册监听器列表中将注册的监听事件添加到列表中。

  5.zookeeper监听到数据或路径变化时,会把这个消息发送给listener线程。

  6.listener线程内部调用了process()方法

 

 

常见的监听:

  监听节点数据变化

  get path [watch]

 

  监听子节点增减的变化

  ls path [watch]

 

四、写数据的流程

  1.客户端向zookeeper的server发送一个写数据的请求。

  2.如果server不是leader,那么server会把接收到的请求进一步转发给leader,因为每个zookeeper的server里面有一个是leader。这个leader会将写请求广播给各个server。各个server写成功后会通知leader。

  3.当leader收到大多数的server数据写成功了,那么就说明数据写入成功(一半)。成功后leader会告诉server数据写入成功。

  4.server会进一步通知客户端数据写入成功。这个时候就认为是整个写操作成功。

 

 

 

 

posted on 2021-03-02 17:12  Cccc杨  阅读(84)  评论(0编辑  收藏  举报