2018-07-13:02-zookeeper认识数据模型

2018-07-13  本文已影响0人  cjxz

zookeeper是一个类似文件夹系统的数据结构。每一个节点称为znode。有名字有数据,znode下面又可以继续添加字节点。zookeeper节点类型有四种:

PERSISTENT                持久化节点
PERSISTENT_SEQUENTIAL     顺序自动编号持久化节点,这种节点会根据当前已存在的节点数自动加 1
EPHEMERAL                 临时节点, 客户端session超时这类节点就会被自动删除
EPHEMERAL_SEQUENTIAL      临时自动编号节点

下面来熟悉一下常用的命令

[zk: 127.0.0.1:2181,127.0.0.1:2182,127.0.0.1:2183(CONNECTED) 12] help
ZooKeeper -server host:port cmd args
    stat path [watch]  #查看节点状态
    set path data [version]  #为节点重新赋值
    ls path [watch]  #列出节点下的所有节点
    delquota [-n|-b] path
    ls2 path [watch]  #列出节点下的所有节点并输出当前节点的状态
    setAcl path acl
    setquota -n|-b val path
    history    #查看历史使用过的命令
    redo cmdno
    printwatches on|off
    delete path [version]  #删除节点,必须没有子节点
    sync path
    listquota path
    rmr path
    get path [watch]
    create [-s] [-e] path data acl  #创建节点,-s是序列节点,-e节点是临时节点
    addauth scheme auth
    quit 
    getAcl path
    close 
    connect host:port

创建节点

#创建持久化节点
create /node1 hhh
#创建序列持久化节点
create -s /node1 abc
#创建序列持久化节点,节点名相同,但是会在序列号上+1
create -s /node1 123
#列出节点
[zk: 127.0.0.1:2181,127.0.0.1:2182,127.0.0.1:2183(CONNECTED) 28] ls /
[zookeeper, node10000000003, node1, node10000000002]

获得节点

[zk: 127.0.0.1:2181,127.0.0.1:2182,127.0.0.1:2183(CONNECTED) 29] get /node1
hhh
cZxid = 0x200000008
ctime = Fri Jul 13 19:26:48 CST 2018
mZxid = 0x200000008
mtime = Fri Jul 13 19:26:48 CST 2018
pZxid = 0x200000008
cversion = 0
dataVersion = 0
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 3
numChildren = 0

创建临时节点

[zk: 127.0.0.1:2181,127.0.0.1:2182,127.0.0.1:2183(CONNECTED) 2] create -e /node2 111
Created /node2

如果当前客户端和服务器断开链接,在开启一个客户端那么这个node2就会被删除,但是不是立刻就删除,有个时间端来同步所有节点

上一篇下一篇

猜你喜欢

热点阅读