python 操作 zookeeper 快速入门
python 操作 zookeeper 快速入门
文章目录
- python 操作 zookeeper 快速入门
- 什么是zookeeper
- python 操作 zk 快速入门
- zk节点
- 创建节点
- 查询节点
- 修改节点
- 删除节点
什么是zookeeper
什么是zookeeper : 这篇zookeeper讲的还满清楚的
python 操作 zk 快速入门
今年开始接触第五门开发语言了, 以前总听说python 性能低,真正接触到一个python项目后才发现它强大之处,刷新了对python的认知,短短几十个文件居然就实现一个很强大的服务应用,废话不多说,写demo。
docker快速启动一个zk
C:\Users\sola>docker search zookeeper
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
zookeeper Apache ZooKeeper is an open-source server wh… 822 [OK]
jplock/zookeeper Builds a docker image for Zookeeper version … 164 [OK]
docker pull zookeeper
docker run -p 2181:2181 zookeeper:latest
这样我们的测试服务就快速起来了。
接着使用python的zookeeper接口的kazoo来做一次增删改查。
zk节点
在Zookeeper中,“节点"分为两类:
第一类同样是指构成集群的机器,为机器节点;
第二类则是指数据模型中的数据单元,数据节点一一ZNode。
Zookeeper维护一个类似文件系统的数据结构,和文件系统一样,我们能够自由的增加、删除znode,在一个znode下增加、删除子znode,唯一的不同在于znode是可以存储数据的。
Zookeeper将所有数据存储在内存中,数据模型是一棵树(Znode Tree),由斜杠(/)的进行分割的路径,就是一个Znode,例如/foo/path1。每个上都会保存自己的数据内容,同时还会保存一系列属性信息。
在Zookeeper中,node可以分为持久节点和临时节点两类:
创建节点
from kazoo.client import KazooClient
zk = KazooClient(hosts='10.0.75.2:2181')
zk.start() #与zookeeper连接
zk.create('/demo/Znode/0001', b'a demo node', makepath=True)
#node = zk.get_children('/') # 查看根节点有多少个子节点
#print(node)
zk.stop() #与zookeeper断开
查询节点
from kazoo.client import KazooClient
zk = KazooClient(hosts='10.0.75.2:2181')
zk.start() #与zookeeper连接
#zk.create('/demo/Znode/0001', b'a demo node',makepath=True)
node = zk.get_children('/') # 查看根节点有多少个子节点
print(node)
print(zk.get(/demo/Znode/0001))
zk.stop() #与zookeeper断开
修改节点
from kazoo.client import KazooClient
zk = KazooClient(hosts='10.0.75.2:2181')
zk.start() #与zookeeper连接
#zk.create('/demo/Znode/0001', b'a demo node',makepath=True)
zk.set('/demo/Znode/0001', b"alter demo node!")
node = zk.get('/demo/Znode/0001') # 查看根节点有多少个子节点
print(node)
zk.stop() #与zookeeper断开
删除节点
from kazoo.client import KazooClient
zk = KazooClient(hosts='10.0.75.2:2181')
zk.start() #与zookeeper连接
#zk.create('/demo/Znode/0001', b'a demo node', makepath=True)
zk.delete('/demo', recursive=True)
node = zk.get_children('/') # 查看根节点有多少个子节点
print(node)
zk.stop() #与zookeeper断开
python 操作zk的一个入门文章,当然zk能实现的功能远不止这么简单,还有Watcher、Session、ACL等重要概念、
zookeeper能实现集群管理,分布式锁,分布式队列,zookeeper集群leader选举等等。
python 操作 zookeeper 快速入门相关推荐
- 【Python零基础快速入门系列 | 03】AI数据容器底层核心之Python列表
• 这是机器未来的第7篇文章 原文首发地址:https://blog.csdn.net/RobotFutures/article/details/124957520 <Python零基础快速入门 ...
- 【Python零基础快速入门系列 | 07】浪漫的数据容器:成双成对之字典
这是机器未来的第11篇文章 原文首发链接:https://blog.csdn.net/RobotFutures/article/details/125038890 <Python零基础快速入门系 ...
- 【Python数据科学快速入门系列 | 04】Numpy四则运算、矩阵运算和广播机制的爱恨情仇
这是机器未来的第43篇文章 原文首发地址:https://blog.csdn.net/RobotFutures/article/details/126493989 文章目录 1. 概述 2. 四则运算 ...
- python新手教程 从零开始-Python零基础从零开始学习Python十分钟快速入门
原标题:Python零基础从零开始学习Python十分钟快速入门 学习Python的,都知道Python 是一个高层次的结合了解释性.编译性.互动性和面向对象的脚本语言.Python是一种动态解释型的 ...
- zookeeper教程,docker 安装,命令,python操作zookeeper,分布式队列,分布式锁
docker安装zookeeper服务端 首先安装单节点的服务端,如果安装多节点的服务端,需要为每个节点配置其他节点的地址. docker run --privileged=true -d --nam ...
- Python 股票分析快速入门
Python 股票分析快速入门 这段时间股市又开始火爆起来了,隐约这透着点大牛市气息,多年不用的股票账户也找回来了.然后就想着用python做下股票分析,尝试制作自己的分析脚本,本篇教程是自己的一些笔 ...
- Python七天快速入门——第一天
Python七天快速入门--第二天 Python七天快速入门--第三天 Python七天快速入门--第四天 上 Python七天快速入门--第四天 下 Python七天快速入门--第五天 Python ...
- zookeeper快速入门——应用(两种分布式锁)
在<zookeeper快速入门--简介>一文中,我们介绍了zookeeper的机制.但是还是比较抽象,没有直观感受到它在分布式系统中的应用.本文我们使用一个例子,三次迭代演进,来说明Zoo ...
- 屏通触摸屏软件操作手册_屏通人机界面软件操作手册快速入门版.pdf
屏通人机界面软件操作手册快速入门版 PM Designer 触控大师 屏 通 人 机 界 面 软件操作手册 快速入门版 0 目 录 第一章 PM Designer触控大师软件简介3 1.1 软件功能介 ...
最新文章
- mybatis mysql Druid_mybatis+Druid连接池的问题
- ios开发之UIView的frame、bounds跟center属性的区别(附图)
- intelliJ idea运行新的test功能时,报错:class not found ..... empty test suite
- 【Bapi】客户主数据快捷修改
- JS以及CSS对页面的阻塞
- 有趣,机器人吵架视频!
- 位置环PID模糊C语言,PID和位置环
- 数字图像处理:各种变换滤波和噪声的类型和用途总结
- mysql数据库安装在unix_Linux下的数据库二:在Linux/Unix平台安装MySQL
- leetcode - 898. 子数组按位或操作(使用了集合)
- 开源项目面试重要吗_您的开源故事很重要
- CSS 参考资料/学习资料
- 【算法】CRC 循环冗余校验
- 亮剑:PHP,我的未来不是梦(1)
- python 实现 画图器_python实现画图工具
- SSL 模拟赛 总结(2017.10.25)
- python画马鞍面_在matlab中怎么画马鞍面?
- java 刽子手图像代码,刽子手游戏代码
- PT100铂热电阻三种测温方法介绍
- Windows 获取和修改Owner