持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第9天,点击查看活动详情
zookeeper常用命令
- 新增节点
create [-s] [-e] path data
指定-s 则为创建有序节点 指定-e 则为创建临时节点
例如:
create /a "a"
create -s /a "a"
create -e /a "a"
临时节点和临时有序节点都会在会话过期后被删除
- 更新节点
set path data
直接指定path进行修改 例如:
set /a "b"
也可以基于版本号进行修改,在set时指定版本号,如果一致则修改,不一致则不修改,机制类似于CAS
set path data version
例如:
set /a "c" 1
- 删除节点
delete path
删除直接指定路径即可 例如:
delete /a
和更新节点一样,删除也可以指定版本号进行删除
delete path version
例如:
delete /a 1
- 查看/获取节点
get path
例如:
get /a
返回的数据中会包含节点数据、节点创建时的事务id、创建时间、最后一次更新事务id、最后一次更新时间、数据子节点最后一次被修改时的事务id等数据
- 查看节点状态
stat path
和get命令不一样的是,stat命令返回的结果中不会包含节点的数据 例如:
stat /a
- 查看节点列表
ls/ls2 path
ls2是ls的增强命令,ls2不仅可以查看指定路径下的子节点列表,还会查看当前节点的信息,而ls只会列出子节点的列表。 例如:
ls /a
返回:
[b, c, ...]
ls2 /a
返回:
[b, c, ...]
cZxid = **
ctime = **
mZxid = **
mtime = **
pZxid = **
cversion = **
dataVersion = **
aclVersion = **
ephemeralOwner = **
dataLength = **
numChildren = **
- 注册内容变化监听器
get path [watch]
够在节点内容发生改变的时候,向客户端发出通知(触发一次后失效) 例如:
get /a watch
- 注册状态变化监听器
stat path [watch]
在节点状态发生改变的时候,向客户端发出通知
- 注册子节点变化监听器
ls path [watch]
ls2 path [watch]
够监听指定节点下所有子节点的增加和删除操作