zk create() 方法

create()
$path = $zkh->create($req_path, $data);
$path = $zkh->create($req_path, $data,
                     'flags' => (ZOO_EPHEMERAL | ZOO_SEQUENCE),
                     'acl' => ZOO_OPEN_ACL_UNSAFE,
                     'path_read_len' => 100);
					 
请求一个节点被创建在ZooKeeper cluster的层级使用给定的path和数据,一旦成功,返回节点的路径,否则undef


path返回同一个成功的create()方法可能不是新节点的完整路径 ,

依赖实际路径的长度和handle object的path_read_len attribute的值

如果 实际路径的值 超过了path_read_len 属性的值,路径返回通过create()方法会被截断,

注意 节点的path 在e ZooKeeper hierarchy 是不受截断的影响


指定一个 值用于 'path_read_len' 选项会临时覆盖  path_read_len  属性的值对于create()方法期间

flag 值可用的对于使用'flags'选项是ZOO_EPHEMERAL and ZOO_SEQUENCE;

两者都包含在 :flags tagset.


ZOO_EPHEMERAL flag 导致节点被标记为临时节点, 意味着它会自动的删除 如果 客户端的会话结束。

ZOO_SEQUENCE flag 会导致一个唯一的整型被应用到节点的最终路径组成。


use Net::ZooKeeper qw(:node_flags :acls);
 
my $zkh = Net::ZooKeeper->new('localhost:7000');
 
$zkh->create('/foo', 'bar',
             'flags' => ZOO_EPHEMERAL,
             'acl' => ZOO_OPEN_ACL_UNSAFE) or
  die("unable to create node /foo: " . $zkh->get_error() . "\n");
 
 
当你创建一个节点它可能是重要的顶一个ACL,要做到这一点, 传递一个引用到一个ACL array(在 "Access Control" 描述)

使用一个'acl'选项。

转载于:https://www.cnblogs.com/zhaoyangjian724/p/6199561.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值