zookeeper 3.8.1安装和入门使用

1、zookeeper环境搭建(Windows单机版)

1.1、 前提

必须安装jdk 1.8,配置jdk环境变量,步骤略

1.2、安装zookeeper

地址:https://zookeeper.apache.org/

1.2.1、选择releases版本

1.2.2、下载安装包并解压

1.2.3、配置data位置 复制 zoo_sample.cfg文件改名为zoo.cfg,修改dataDir位置

1.3、使用

1.3.1、开启服务端

1.3.2、开启客户端

服务端启动成功显示

客服端启动成功显示

2、zookeeper使用

2.1、帮助命令: help

help(查看所有zk命令)
​
ls  查看命令ls -R /quota_test    显示 
#   /quota_test
#   /quota_test/child_1
#   /quota_test/child_2/quota_test/child_3ls -s /quota_test显示
#   [child_1, child_2, child_3]
#   cZxid = 0x110000002d
#   ctime = Thu Mar 07 11:19:07 UTC 2019
#   mtime = Thu Mar 07 11:19:07 UTC 2019
#   pZxid = 0x1100000033
#   cversion = 3
#   dataVersion = 0
#   aclVersion = 0
#   ephemeralOwner = 0x0
#   dataLength = 0
#   numChildren = 3ls -w /brokers    为brokers节点添加监视器,当brokers添加或删除子节点时会提示
#   WATCHER::
​
#WatchedEvent state:SyncConnected type:NodeChildrenChanged path:/app2

2.2、创建节点

create [-s] [-e] [-c] [-t ttl] path [data] [acl][-s]        自动添加序号(自增)[-e]        表示为零时节点[-c]        创建容器节点[-t ttl]        创建ttl节点,可以指定超时时间,3.6.0之后版本出现path        节点路径名 根目录为/,每个/代表一层  最后一个/后的内容为当前创建的节点名,若节点名前几层的节点不存在时当前节点创建时会报错,不会自动创建[data]      节点数据 "data"   和path类似与  Key:value [acl]       节点访问权限

2.3、节点类型

普通永久节点

create /app1 "hello zk" 创建普通永久节点app1 value为 hello zk

带序号永久节点

create -s /app2 "hello zk"创建带序号永久节点app1 value为 hello zk

普通临时节点

create -e /app3 "hello zk"创建普通临时节点app3 value为 hello zk 临时节点当客户端关闭时会被删除

带序号临时节点

create -e -s /app4 "hello zk"创建普通临时节点app4 value为 hello zk  临时节点当客户端关闭时会被删除

创建容器节点

 create -c /container_node mydata 当容器结点的最后一个子节点被删除时容器节点就会被删除

创建ttl节点

#注意 先在zoo.cfg加入extendedTypesEnabled=true配置,否则会报 KeeperErrorCode = Unimplemented for /ttl_node   错误
​
create -t 1000 /app1 "hello" 创建一个1000ms过时的节点app1 data为hello

创建acl节点

详见 https://blog.csdn.net/yangshangwei/article/details/109759787

2.4、获取节点值

get [-s] [-w] path [-s] 查看节点详细信息[-w] 为path设置监听器,当data改变时提醒get -s /app1  或者 stat /app1
#前者会多显示一条节点值
# ­­­­­­­­­­­节点的状态信息,也称为stat结构体­­­­­­­­­­­­­­­­­­­
# 创建该znode的事务的zxid(ZooKeeper Transaction ID)
# 事务ID是ZooKeeper为每次更新操作/事务操作分配一个全局唯一的id,表示zxid,值越小,表示越先执行
cZxid = 0x4454 # 0x0表示十六进制数0
ctime = Thu Jan 01 08:00:00 CST 1970  # 创建时间
mZxid = 0x4454 						  # 最后一次更新的zxid
mtime = Thu Jan 01 08:00:00 CST 1970  # 最后一次更新的时间
pZxid = 0x4454 						  # 最后更新的子节点的zxid
cversion = 5 						  # 子节点的变化号,表示子节点被修改的次数
dataVersion = 0 					  # 当前节点的变化号,0表示从未被修改过
aclVersion = 0  					  # 访问控制列表的变化号 access control list
# 如果临时节点,表示当前节点的拥有者的sessionId
ephemeralOwner = 0x0				  # 如果不是临时节点,则值为0
dataLength = 13 					  # 数据长度
numChildren = 1 					  # 子节点数据get -w /app1  为app1添加监听器  当使用 set命令修改app1的值时zk监视器会提醒

2.5、修改节点值

set /app1  "hello set" 

2.6、删除节点值

delete path   当path存在子节点时无法删除
deleteall path 递归删除path及其子节点

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

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

相关文章

前端文件、图片直传OOS、分片上传、el-upload上传(vue+elementUI)

前言:基于天翼云的面相对象存储(Object-Oriented Storage,OOS),实现小文件的直接上传,大文件的分片上传。 开发文档地址:网址 上传之前的相关操作:注册账户,创建 AccessKeyId 和 AccessSecretKey之后&…

企业怎么优化固定资产管理

在优化固定资产管理的过程中,不仅要关注硬件设备和设施的维护,还要重视软件系统和数据管理。一些可能的方法:  需要建立一套完整的资产管理系统。这个系统应该包括资产的采购、登记、使用、维修、报废等各个环节的管理流程。通过这个系统&a…

智慧工地源码带开发手册文档 app 数据大屏、硬件对接、萤石云

智慧工地解决方案依托计算机技术、物联网、云计算、大数据、人工智能、VR、AR等技术相结合,为工程项目管理提供先进技术手段,构建工地现场智能监控和控制体系,弥补传统方法在监管中的缺陷,最终实现项目对人、机、料、法、环的全方…

Windows安装FFmpeg说明

下载地址 官网 Download FFmpeg Csdn ffmpeg安装包,ffmpeg-2023-08-28-git-b5273c619d-full-build.7z资源-CSDN文库 解压安装,添加环境变量 命令行输入ffmpeg 安装成功

【mysql】MySQL服务无法启动 NET HELPMSG 3534

MySQL服务无法启动 NET HELPMSG 3534 错误描述寻找原因解决方法 错误描述 mysql版本:8.1.0 mysql安装成功之后,使用net start mysql来启动mysql,然后出现了报错 MySQL服务无法启动 NET HELPMSG 3534 寻找原因 1、在cmd中,进入…

React 如何获取上一次 state 的值

React 如何获取上一次 state 的值 一、用 ref 存储上一次的 state 类似 usePrevious function usePrevious(value) {const ref useRef();useEffect(() > {ref.current value;});return ref.current; }二、通过 setState 的入参改为函数获取

electron win系统通知修改通知标题栏

标题栏的 electron.app.Electron 如何修改: var package require("../package.json"); app.setAppUserModelId(package.description); app.setAppUserModelId 在主进程的app这里修改

Flutter 混合开发调试

针对Flutter开发的同学来说,大部分的应用还是Native Flutter的混合开发,所以每次改完Flutter代码,运行整个项目无疑是很费时间的。所以Flutter官方也给我们提供了混合调试的方案【在混合开发模式下进行调试】,这里以Android Stud…

【openEuler创新项目探索】一个Java端的向量化BLAS库VectorBLAS

VectorBLAS简介 VectorBLAS是一个使用Java语言实现的向量化BLAS高性能库,目前已在openEuler社区开源。 VectorBLAS通过循环展开、矩阵分块和内存布局优化等算法优化,对BLAS函数进行了深度优化,并利用VectorAPI JDK提供的多种向量化API实现。…

Baklib是比语雀、Notion、石墨文档更好用的在线知识库管理工具

在当今信息爆炸的时代,如何高效地管理和利用知识成为了每个人都面临的问题。在线知识库管理工具应运而生,帮助用户整理、存储和共享知识。在这篇文章中,我将介绍一个更好用的在线知识库管理工具——Baklib,并探讨它相对于其他知识…

PMAC与Modbus主站进行Modbus Tcp通讯

PMAC与Modbus主站进行Modbus Tcp通讯 创建modbus通讯参数 在项目的PMAC Script Language\Global Includes下创建一个名为00_Modbus_Para.pmh的pmh文件。 Modbus[0].Config.ServerPort 0 Modbus[0].Config.ConnectTimeOut 6000 Modbus[0].Config.SendRecvTimeOut 0 Modbu…

利用Jmeter做接口测试(功能测试)全流程分析

利用Jmeter做接口测试怎么做呢?过程真的是超级简单。 明白了原理以后,把零碎的知识点填充进去就可以了。所以在学习的过程中,不管学什么,我一直都强调的是要循序渐进,和明白原理和逻辑。这篇文章就来介绍一下如何利用…

【机器学习7】特征缩放

特征缩放 🍀特征缩放的重要性🌱归一化🌱标准化🌱更高级的缩放方法🌸导入数据集&将数据集划分为训练集和测试集🌸Sklearn-Learn算法实现归一化🌸Sklearn-Learn算法实现标准化 🍀特…

Google登录SDK

一、接入的准备工作 官方文档链接地址:开始使用一键登录和注册 按照步骤进行接入即可 二、项目参考(Unity项目) 注意:代码版本如果不适用新的Google API 请自行参考最新版本接口 SDKGoogleSignInActivity 主要用于登录的代码。Un…

[Linux]进程程序替换

[Linux]进程程序替换 文章目录 [Linux]进程程序替换进程程序替换的意义见一见进程程序替换进程程序替换的原理进程程序替换中的写时拷贝介绍进程程序替换接口 进程程序替换的意义 Linux系统下使用fork系统函数创建子进程后,子进程只能执行继承的部分父进程代码&…

108页石油石化5G智慧炼化厂整体方案PPT

导读:原文《108页石油石化5G智慧炼化厂整体方案PPT》(获取来源见文尾),本文精选其中精华及架构部分,逻辑清晰、内容完整,为快速形成售前方案提供参考。以下是部分内容,

Redis7之介绍(一)

1. 是什么 Redis:REmote Dictionary Server(远程字典服务器) Remote Dictionary Server( 远程字典服务)是完全开源的,使用ANSIC语言编写遵守BSD协议,是一个高性能的Key-Value数据库提供了丰富的数据结构,例如String、Hash、List、…

电商数仓项目需求及架构设计

一、项目需求 1.用户行为数据采集平台搭建 2.业务数据采集平台搭建 3.数仓维度建模 4.统计指标 5.即席查询工具,随时进行指标分析 6.对集群性能进行监控,发生异常时报警(第三方信息) 7.元数据管理 8.质量监控 9.权限管理&#xff…

浅谈Lua协程和函数的尾调用

前言 虽然不经常用到协程,但是也不能谈虎色变。同时,在有些场景,协程会起到一种不可比拟的作用。所以,了解它,对于一些功能,也会有独特的思路和想法。 协程 概念 关于进程和线程的概念就不多说。 那么…

b站手机缓存文件转MP4

b站缓存的文件 音频、视频、弹幕是分开的 这里我只用到了音频和视频所以只介绍这一部分 b站的缓存视频文件和路径结构如下 默认缓存路径 内部存储\Android\data\tv.danmaku.bilil\download\89720189 文件夹结构 文件夹 c_738583 这是单个视频的缓存文件夹 进入c_738583文件夹…