docker compose部署zookeeper

单机部署

  • 新建docker-compose.yaml
version: '3'
services:zookeeper:image: zookeeper:3.5.7container_name: base-zookeeperhostname: zookeeperprivileged: truerestart: alwaysports:- 2181:2181environment:TZ: "Asia/Shanghai"volumes:- ./volumes/zookeeper/datalog:/datalog- ./volumes/zookeeper/logs:/logs- ./volumes/zookeeper/data:/data- ./volumes/zookeeper/conf:/conf
  • 使用docker-compose启动
docker-compose -f docker-compose.yaml up -d
  • 测试连接
docker-compose -f docker-compose.yaml exec -it zookeeper zkCli.sh -serv
er zookeeper

看到下面信息表示客户端连接成功
在这里插入图片描述

  • 测试使用
set /name zs
get /name

在这里插入图片描述

集群部署

todo

python访问测试

  • 安装库
pip install kazoo -i https://pypi.douban.com/simple
  • 新建test_zk.py
from kazoo.client import KazooClientzk = KazooClient(hosts='zookeeper:2181')  # # 创建一个ZooKeeper客户端实例
zk.start()  # 启动ZooKeeper客户端连接# 检查是否成功连接到ZooKeeper
if zk.connected:print("成功连接到ZooKeeper!")# 进行其他操作,例如创建节点、获取节点数据等
zk.set('/name', b'zs')
value = zk.get('/name')
print(value)zk.stop()  # 关闭ZooKeeper客户端连接
  • 运行
    在这里插入图片描述

python常用操作

from kazoo.client import KazooClient# 创建一个ZooKeeper客户端实例
zk = KazooClient(hosts='zookeeper:2181')# 启动ZooKeeper客户端连接
zk.start()# 检查是否成功连接到ZooKeeper
if zk.connected:print("成功连接到ZooKeeper!")# 进行其他操作,例如创建节点、获取节点数据等
zk.create('/app_01', b'app_01')  # 创建节点
zk.exists('/app_01')  # 检查节点是否存在
zk.get('/app_01')  # 获取节点数据
zk.set('/app_01', b'app_01_back')  # 修改节点数据zk.create('/app_01/sub_app_01')
zk.create('/app_01/sub_app_02')
zk.get_children('app_01')  # 获取指定节点的所有子节点
zk.delete('app_01/sub_app_01')  # 删除节点# 监听器监听子节点,当子节点发生变化时触发
@zk.ChildrenWatch('/app_01')
def watch_children(children):print("this is watch_children %s" % children)# 监听器监听数据,当节点数据发生变化时触发
@zk.DataWatch("/app_01")
def watch_data(data, state):print("app_01 node is %s" % data)# 事务,自v3.4以后,zookeeper支持一次发送多个命令,这些命令作为一个原子进行提交,要么全部执行成功,要么全部失败
transaction = zk.transaction()
transaction.check('/china/beijing', version=3)
transaction.create('/china/shanghai', b"shanghai")
results = transaction.commit()zk.stop()  # 关闭ZooKeeper客户端连接

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/93376.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

蓝牙资讯|2023年Q2蓝牙耳机市场报告发布,苹果依然占据第一

市场调查机构 Canalys 发布最新报告,2023 年第二季度全球个人智能音频设备(包括 TWS, 无线头戴,无线颈挂)下滑了 2%,出货量达到 9568 万部,基本追平去年同期。其中,真无线耳机(TWS&a…

Java语言怎么输出有颜色的字符串呢?

在Java中,我们应该如何输出有颜色的文字字符串呢? 目录 一、使用方法 二、举例说明 三、常见的颜色及其对应的ANSI转义序列 一、使用方法 在Java中,可以使用ANSI转义序列来改变输出文本的颜色。 二、举例说明 (1&#xff…

Android UI自动化测试框架—SoloPi简介

1、UI自动化测试简介 软件测试简介 ​软件测试是伴随着软件开发一同诞生的,随着软件规模大型化,结构复杂化,软件测试也从最初的简单“调试”,发展到当今的自动化测试。 ​ 自动化测试是什么呢?自动化测试是把以人为…

Docker部署rabbitmq遇到的问题 Stats in management UI are disabled on this node

1. Stats in management UI are disabled on this node #进入rabbitmq容器 docker exec -it {rabbitmq容器名称或者id} /bin/bash#进入容器后,cd到以下路径 cd /etc/rabbitmq/conf.d/#修改 management_agent.disable_metrics_collector false echo management_age…

【iMessage苹果推?IM推送】群控脚本当Apple APNS推送服务器从您的应用程序接吸收注册消息时,它将为您回到一串devicetoken

推荐内容IMESSGAE相关 作者✈️IMEAE推荐内容iMessage苹果推软件 *** 点击即可查看作者要求内容信息作者✈️IMEAE推荐内容1.家庭推内容 *** 点击即可查看作者要求内容信息作者✈️IMEAE推荐内容2.相册推 *** 点击即可查看作者要求内容信息作者✈️IMEAE推荐内容3.日历推 *** …

设计模式之享元模式(Flyweight)的C++代码实现

1、享元模式提出 面向对象很好地解决了抽象问题,但是创建对象会带来一定的内存开销。绝大部分情况下,创建对象带来的内存开销是可以忽略不计的;在有些情况下是需要谨慎处理的,如类A的sizeof是50个字节,则创建50*1024*…

CSS实现左侧固定,右侧自适应(5种方法)

<div class"father"><!-- 左右div不能调换顺序来写 --><div class"left">固定宽度区</div><div class"right">自适应区</div> </div> 一、利用左侧浮动float右侧margin-left /* 利用浮动floatmargin…

2023年第四届全国人工智能大赛初赛晋级复赛名单公示

由深圳市科技创新委员会、鹏城实验室共同主办&#xff0c;新一代人工智能产业技术创新战略联盟&#xff08;AITISA&#xff09;承办&#xff0c;华为技术有限公司、中国工商银行股份有限公司深圳市分行、中国农业银行股份有限公司深圳市分行、中国建设银行股份有限公司深圳市分…

集合(map+set)

【数据结构1-3】集合 - 题单 - 洛谷 例题 P1551 亲戚 亲戚 - 洛谷 并查集 #include<bits/stdc.h> using namespace std; int n,m,q,f[10010],x,y,a,b; int find(int x)//找出x家的大佬 也就是二叉树的祖先节点 {if(f[x]x)//x是x的爸爸&#xff0c;简单的来说就是x没爸…

Apache JMeter:完全指南

Apache JMeter 是一款开源的性能测试工具&#xff0c;可以用于测试 Web 应用程序、FTP 服务器、数据库等各种类型的服务器。本文将以 JMeter 5.5 为例介绍 JMeter 的使用方法。 下载和安装 由于 JMeter 是使用 Java 开发的&#xff0c;因此在运行之前必须先安装 JDK。您可以在…

解读2023年上半年财报:净利润达11.08亿元,东鹏做对了什么?

“累了、困了&#xff0c;喝东鹏特饮”&#xff0c;这句朗朗上口的广告词是很多人对于功能性饮料的第一印象。而这句经典广告词背后的公司便是如今发展如日中天的东鹏饮料。近些年&#xff0c;东鹏饮料凭借快准狠的营销、推广打法&#xff0c;迅速在功能性饮料市场攻城略地&…

PS实现多个图片转化GIF动画

PS实现多个图片转化为GIF动画步骤 一、导入图片素材1.打开PS软件&#xff0c;点击 [文件] --- [脚本] ---[将文件载入堆栈]2.选择图片3.导入成功 二、打开时间轴1.点击[窗口]---[时间轴]2.选择创建帧动画3.创建帧动画 三、创建动画1.复制帧。2.设置帧的内容。3.修改图片停留的时…

Streamlit 讲解专栏(九):深入探索布局和容器

文章目录 1 前言2 st.sidebar - 在侧边栏增添交互元素2.1 将交互元素添加至侧边栏2.2 示例&#xff1a;在侧边栏添加选择框和单选按钮2.3 特殊元素的注意事项 3 st.columns - 并排布局多元素容器3.1 插入并排布局的容器3.2 嵌套限制 4 st.tabs - 以选项卡形式布局多元素容器4.1…

使用腾讯云轻量服务器Matomo应用模板建网站流量统计系统

腾讯云百科分享使用腾讯云轻量应用服务器Matomo应用模板搭建网站流量统计系统&#xff0c;Matomo 是一款开源的网站数据统计软件&#xff0c;可以用于跟踪、分析您的网站的流量&#xff0c;同时充分保障数据安全性、隐私性。该镜像基于 CentOS 7.6 64位操作系统&#xff0c;已预…

【C++】一文带你初识C++继承

食用指南&#xff1a;本文在有C基础的情况下食用更佳 &#x1f340;本文前置知识&#xff1a; C类 ♈️今日夜电波&#xff1a;napori—Vaundy 1:21 ━━━━━━️&#x1f49f;──────── 3:23 …

Weak Session IDs (弱会话)

Weak Session IDs (弱会话) 当用户登录后&#xff0c;在服务器就会创建一个会话(session)&#xff0c;叫做会话控制&#xff0c;接着访问页面的时候就不用登录&#xff0c;只需要携带Sesion去访问。 sessionID作为特定用户访问站点所需要的唯一内容。如果能够计算或轻易猜到该…

odoo-035 Pycharm git commit 提交提示 No changes detected

文章目录 问题查找解决其他&#xff1f; 问题 在 gitee 上面新建的 git 项目&#xff0c;dowanload 下来&#xff0c;在 Pycharm 中修改后发现改完就变成白色到了&#xff0c;不是绿色或蓝色的&#xff0c;然后 git commit 的时候提示 No changes detected。 查找 上面是在 …

【设计模式】简单工厂模式

文章目录 问题&#xff1a; 简单写一个计算器&#xff0c;输入2个数和运算符&#xff0c;得到结果。 分析&#xff1a; 这一题看上去很简单&#xff0c;但如果面试时你写的是下面这种代码&#xff0c;那大概率是过不了的。 上面代码也能实现题目的功能&#xff0c;但是代码没有…

JetPack Compose 学习笔记(持续整理中...)

1.为什么要学&#xff1f; 1.命令式和声明式 UI大战,个人认为命令式UI自定义程度较高,能更深入到性能,内存优化方面,而申明式UI 是现在主流的设计,比如React,React Native,Flutter,Swift UI等等,现在性能也逐渐在变得更好 2.还有一个原因compose 是KMM 是完整跨平台的UI基础 3.…

【GitHub】Pycharm本地项目打包上传到Github仓库的操作步骤

文章目录 1、Pycharm端的设置操作2、Github端的设置操作3、Pycharm上配置Github4、Git本地项目至GitHub仓库5、前往Github中查看确认6、常见报错 1、Pycharm端的设置操作 通过CtrlAltS快捷组合键的方式&#xff0c;打开设置&#xff0c;导航到版本控制一栏中的Git&#xff0c;…