【问题标题】:Why is ZooKeeper changing the name of my znode?为什么 ZooKeeper 会更改我的 znode 的名称?
【发布时间】:2011-07-07 12:56:21
【问题描述】:

我正在学习如何使用 ZooKeeper(版本 3.3.3)并让它与 Cygwin(版本 1.7.9)一起运行。为了创建一个 znode,我执行以下操作:

$ zkServer.sh start   
$ zkCli.sh
[zk: localhost:2181(CONNECTED) 0] create /zoo-1 "Hello World!" null    
Created /zoo-1

这似乎工作正常:

[zk: localhost:2181(CONNECTED) 1] ls /
[zoo-1, zookeeper]

但是,如果我尝试使用 -s 标志,就会发生这种情况:

[zk: localhost:2181(CONNECTED) 2] create -s /zoo-2 "Hello World!" null
Created /zoo-20000000007
[zk: localhost:2181(CONNECTED) 3] ls /
[zoo-20000000007, zoo-1, zookeeper]

不过,删除标志后,名称保持不变:

[zk: localhost:2181(CONNECTED) 4] create -s /zoo-2 "Hello World!" null
Created /zoo-2
[zk: localhost:2181(CONNECTED) 5] ls /
[zoo-2, zoo-20000000007, zoo-1, zookeeper]

为什么使用使znode持久化的-s标志也会改变znode的名称?我按照下面的教程http://java.dzone.com/articles/zookeeper-primer 进行操作,从他的示例中,同样的事情不会发生在他身上。

感谢您的宝贵时间!

【问题讨论】:

    标签: flags apache-zookeeper


    【解决方案1】:

    -s 标志是创建一个sequential node。 dzone 文章好像有错误。

    【讨论】:

    • 为了完整起见:没有标志创建一个正常的、持久的节点。 -e 创建临时节点,当客户端关闭会话时该节点会消失。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-07-15
    • 2017-11-11
    • 1970-01-01
    • 2020-10-20
    • 2021-12-04
    • 1970-01-01
    相关资源
    最近更新 更多