zookeeper客户端zkpython使用文档(一)

本文介绍如何使用Python SDK进行ZooKeeper的基本操作,包括建立连接、创建节点、设置访问控制、查看子节点、获取节点值、修改和删除节点以及关闭连接等。并详细解释了访问控制列表(acl)的配置方法。
摘要由CSDN通过智能技术生成

使用操作之前的代码:

import zookeeper;#导入zkpython模块

(1)建立连接 

handler = zookeeper.init("localhost:2181");

(2)创建节点 

zookeeper.create(handler,"/zkpython_create_node","mydata1",[{"perms":0x1f,"scheme":"world","id":"anyone"}]),0);

这个地方需要详细的解释一下,第一个参数就是我们刚才建立的链接,第二个参数是创建的节点的路径,第三个是创建的节点的数据,第四个是acl(zookeeper中的访问控制列表),第四个是创建的节点的类型(0表示持久化的,1表示持久化+序号,2表示瞬时的,3表示瞬时加序号型的)

好...疑问来了,acl的描述为什么是这样的,首先第一个参数是perms,这个代表了控制这个节点的权限,具体值参考如下:

        int READ = 1 << 0;
        int WRITE = 1 << 1;
        int CREATE = 1 << 2;
        int DELETE = 1 << 3;
        int ADMIN = 1 << 4;
也就是说,这是一个数字,而我们例子中为什么是1f呢?实际上就是 READ | WRITE | CREATE | DELETE | ADMIN的结果,这下明白是什么意思了吧??好,后面还有两个参数,实际上现在java和c的api中定义的值只有两种,除了例子中的还有一种是

"scheme":"auth","id":""组合的,但是实际上,官方的文档中是有四种的,有兴趣的同学可以参考:

http://zookeeper.apache.org/doc/trunk/zookeeperProgrammers.html 里的内容 

(3)查看子节点 

zookeeper.get_children(handler,"/",None); 

(4)获取节点的值及描述信息 

zookeeper.get(handler,"/zkpython_create_node");
 

(5)修改节点的值 

zookeeper.set(handler,"/zkpython_create_node","mydata2"); 

(6)删除节点的值 

zookeeper.delete(handler,"/zkpython_create_node"); 

(7)关闭连接 

zookeeper.close(handler);
 

这里介绍的都是最基本的操作了,接下来就是结合监听器使用相关的操作了,等有时间再补全吧 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值