客户端脚本
创建
create [-s] [-e] path data acl
[-s]:顺序节点 ---------- (不加默认为永久节点)
[-e]:临时节点 ---------- (不加默认为永久节点)
path:创建的节点路径
data:路径上znode存储的数据
acl:权限控制 ---------- (不加则默认不做任何权限控制)
举个栗子:
create-s /cyx 123
创建节点" /cyx ",该节点为顺序节点,节点中存储的数据为"123"
"/":为根节点
注意:如果不加-s 或 -e,默认创建的节点类型为永久节点
那么问题来了,什么是顺序节点?
当创建节点(ZNode)的时候,用户可以请求在ZooKeeper的路径结尾添加一个递增的计数。这个计数对于父节点来说是唯一的。
换句话说,这个顺序节点是"唯一性的保证"
读取
ls path
使用ls命令,可以列出指定节点下所有的子节点。
举个栗子:
ls /
列出"/"根目录下,所有的子节点
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
get path
使用get命令,可以获取指定数据节点中的数据
举个栗子:
get/cyx0000000035
获取节点"/cyx0000000035"下的数据
更新
set path data [version]
path:节点路径
data:更新数据
version:版本数据
使用set命令,更新指定节点中的数据信息
举个栗子:
set/cyx0000000035 456
更新"/cyx0000000035"节点中的数据为456
我们验证下:
注意看dataversion从一开始的0变成了1,这是因为刚才的更新操作导致该节点的数据版本而发生了变更。
删除
delete path[version]
删除命令,命令中的version与更新命令中的version一个意思。
举个栗子:
delete/cyx0000000035
删除节点"/cyx0000000035"
验证下:
cyx0000000035这个节点已经不存在了...