分布式集群zookeeper —— 入门

1. 命令操作
  • 创建节点
    create [-s] [-e] path data acl

    • -s:可选参数,表示节点是否有序
    • -e:可选参数,表示是否为临时节点

    默认情况下是持久化节点

[zk: localhost:2181(CONNECTED) 28] create /node 123
Created /node

[zk: localhost:2181(CONNECTED) 32] create /node/node1-1 123
Created /node/node1-1

[zk: localhost:2181(CONNECTED) 35] ls /node
[node1-1]

创建一个有序节点

[zk: localhost:2181(CONNECTED) 5] create -s /nodes 123
Created /nodes0000000001

创建一个临时节点:

[zk: localhost:2181(CONNECTED) 5] create -e /app 123
Created /app

  • 获取指定path的信息
    get path [watch]
[zk: localhost:2181(CONNECTED) 7] get /nodes0000000001
123
cZxid = 0x3
ctime = Sat Aug 11 11:42:58 CST 2018
mZxid = 0x3
mtime = Sat Aug 11 11:42:58 CST 2018
pZxid = 0x3
cversion = 0
dataVersion = 0
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 3
numChildren = 0

  • 修改节点 path对应的data
    set path data [version]
    • version:表示乐观锁,(数据库里面有一个version字段去控制数据行的版本号)

  • 删除节点

    delete path [version]

    删除节点跟创建节点的顺序相反,创建节点是从根往叶子方向创建,删除时需要先删叶子节点再删除根节点。


2. stat信息

cversion = 0 # 子节点的版本号
aclVersion = 0 # 表示acl(access controller list)的版本号,修改节点权限
dataVersion= 0 # 表示当前节点数据的版本号

cZxid = 0x6 # 节点被创建时的事务ID
mZxid = 0x6 # 节点最后一次被更新的事务ID
pZxid = 0x6 # 当前节点下的子节点最后一次被修改时的事务ID

ctime = Sat Aug 11 11:49:13 CST 2018 # 创建时间
mtime = Sat Aug 11 11:49:13 CST 2018 # 修改时间

ephemeralOwner = 0x0 # 创建临时节点的时候,会有一个sessionId。该值存储的是这个sessionId
dataLength = 3 # 数据值长度
numChildren = 0 # 子节点树


3. wathcer

zookeeper提供了分布式数据 发布 / 订阅,zookeeper允许客户端向服务器注册一个watcher监听。当服务器端的指定节点触发指定事件的时候会触发watcher。

watcher的通知是一次性的,一旦触发一次通知后,该watcher就失效。


4. ACL

zookeeper提供控制节点访问权限的功能,用于有效的保证zookeeper中数据的安全性。避免误操作而导致系统出现重大事故。
CREATE/READ/WRITE/DELETE/ADMIN

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值