zookeeper 二 : 常用命令 + 节点信息解读 + 特性 session

常用命令

启动 zookeeper: ./zkServer.sh start
连接本地 zookeeper:./zkCli.sh

  1. ls 与 ls2:ls 只看节点,ls2 可以查看节点状态
    QQ截图20180713083619.png
  2. stat: 查看状态(ls2 = ls + stat)
  3. get: 获取节点数据
  4. create: create [-s] [-e] path data acl 创建节点
    创建默认节点,非顺序,持久化的
    create /imooc imooc-data
    创建临时节点
    create -e /imooc/tmp imooc-tmp-data
    创建顺序节点
    create -s /imooc/sec seq
    QQ截图20180713083641.png
  5. set path data [version]
    QQ截图20180713083911.png
    版本号要跟节点数据的版本号一致,否则无法更新
  6. delete path [version]
    QQ截图20180713083936.png

节点状态解读

QQ截图20180713084021.png

cZxid: 创建后 zk 为当前节点分配的 id
ctime: create time,节点创建时间
mZxid: 节点修改后的 id
mtime: 节点修改时间
pZxid: 子节点 id
cversion: 子节点 version,子节点数据变化时 cversion 会变化
dataversion: 当前节点的数据版本号,当当前节点数据修改后,版本号会加一
aclVersion: 访问控制列表版本,权限变化时累加
ephemeralOwner:短暂的拥有者,临时节点绑定到的 session id
dataLength:数据长度
numChildren: 子节点数

特性 - session

  1. 客户端与服务端的连接为一次会话
  2. 每个会话都会设置一个超时时间
  3. 心跳结束,session 过期(连接过程中,客户端会定期向服务端发送心跳指令,表明自己还存活)
  4. session 过期,则临时节点 znode 会被删除
  5. 心跳机制:客户端向服务端的 ping 包请求
  6. watcher 机制

猜你喜欢

转载自blog.csdn.net/aimeimeits/article/details/81025375