使用python的kazoo模块连接zookeeper实现最基本的增删改查

kazoo的官方文档地址:https://kazoo.readthedocs.io/en/latest/index.html

#!/usr/bin/env python
# -*- coding: utf-8 -*-
""" 
                                                    __----~~~~~~~~~~~------___
                                   .  .   ~~//====......          __--~ ~~
                   -.            \_|//     |||\\  ~~~~~~::::... /~
               ___-==_       _-~o~  \/    |||  \\            _/~~-
        __---~~~.==~||\=_    -_--~/_-~|-   |\\   \\        _/~
    _-~~     .=~    |  \\-_    '-~7  /-   /  ||    \      /
  .~       .~       |   \\ -_    /  /-   /   ||      \   /
 /  ____  /         |     \\ ~-_/  /|- _/   .||       \ /
 |~~    ~~|--~~~~--_ \     ~==-/   | \~--===~~        .\
          '         ~-|      /|    |-~\~~       __--~~
                      |-~~-_/ |    |   ~\_   _-~            /\
                           /  \     \__   \/~                \__
                       _--~ _/ | .-~~____--~-/                  ~~==.
                      ((->/~   '.|||' -_|    ~~-/ ,              . _||
                                 -_     ~\      ~~---l__i__i__i--~~_/
                                 _-~-__   ~)  \--______________--~~
                               //.-~~~-~_--~- |-------~~~~~~~~
                                      //.-~~~--\
                               神兽保佑
                              代码无BUG!

"""
# zookeeper集群地址
# server.1=192.168.0.162:2888:3888
# server.2=192.168.0.162:2889:3889
# server.3=192.168.0.162:2890:3890


# pip install kazoo

from kazoo.client import KazooClient

# 连接zookeeper
zk = KazooClient(hosts="192.168.0.162:2181,192.168.0.162:2182,192.168.0.162:2183")


# 启动连接
zk.start()

# 创建
## 创建节点
# zk.ensure_path("/my/favorite")

## 节点添加数据,必须是byte
# zk.create("/my/favorite/node", b"a value")
# zk.create("/my/favorite/name1", b"111111")
# zk.create("/my/favorite/name2", b"222222")

# 获取节点数据
# data, stat = zk.get("/my/favorite/node")
# print("Version: %s, data: %s" % (stat.version, data.decode("utf-8")))
# Version: 0, data: a value

# 列出节点数据
# children = zk.get_children("/my/favorite")
# print("There are %s children with names %s" % (len(children), children))
# There are 3 children with names ['node', 'name2', 'name1']

# 修改节点数据
# zk.set("/my/favorite/node", b"some data")

# 删除节点数据
zk.delete("/my/favorite/name2", recursive=True)

# 关闭连接
zk.stop()


posted @   哈喽哈喽111111  阅读(1533)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
点击右上角即可分享
微信分享提示