ZooKeeper中节点的操作命令(查看、创建、删除节点)

天行健,君子以自强不息;地势坤,君子以厚德载物。


每个人都有惰性,但不断学习是好好生活的根本,共勉!


文章均为学习整理笔记,分享记录为主,如有错误请指正,共同学习进步。

文章目录

  • 1. help帮助命令
  • 2. ls查看节点信息
    • 2.1 查看根节点信息
    • 2.2 查看根节点的详细信息
    • 2.3 查看根节点的名称
    • 2.4 查看根节点的所有节点及子节点
  • 3. get获取节点信息
  • 4. create创建节点
  • 5. create -e创建临时节点
  • 6. create -s创建顺序编号节点
  • 7. delete删除节点(空节点)
  • 8. deleteall删除节点(非空节点)
  • 9. stat查看节点状态


ZooKeeper相关文章参考:
ZooKeeper下载、安装、配置和使用
ZooKeeper配置文件zoo.cfg参数详解

启动server服务以及cli客户端
在cli客户端窗口中操作以下命令

1. help帮助命令

输入help可呼出所有相关命令
可根据需要找到指定的命令,然后输入找到的命令,就可继续往下查看对应命令的使用
在这里插入图片描述
如ls命令来说,继续输入ls则会看到ls命令的详细用法
在这里插入图片描述

2. ls查看节点信息

语法:

ls [-s] [-w] [-R] path

-s表示查看详细信息,可省略
-w表示只看节点名称,可省略
-R表示查看根路径的所有节点及子节点,可省略
path表示节点路径,可以是根节点/,也可以是子节点路径如/a,或者/a/b/c

2.1 查看根节点信息

ls /

在这里插入图片描述

2.2 查看根节点的详细信息

ls -s /

在这里插入图片描述

参数详细描述如下:
[zookeeper]
表示子节点名称数组如果多个则在中括号中以逗号隔开
接下来是节点的状态信息,也称为stat结构体

cZxid = 0x0
表示创建znode的事务的zxid(ZooKeeper Transaction ID)
事务ID是ZooKeeper每次更新操作/事务操作分配一个全局唯一的id,表示zxid,值越小表示越先执行
0x0表示十六进制数0

ctime = Thu Jan 01 08:00:00 CST 1970
表示创建时间

mZxid = 0x0
表示最后一次更新的zxid

mtime = Thu Jan 01 08:00:00 CST 1970
表示最后一次更新的时间

pZxid = 0x0
表示最后更新的子节点的zxid

cversion = -1
表示子节点的变化号,即子节点被修改的次数,-1表示未被修改过

dataVersion = 0
表示当前节点的变化号,0表示未被修改过

aclVersion = 0
表示访问控制列表的变化号,access control list

ephemeralOwner = 0x0
表示如果临时节点,表示当前节点的拥有者的sessionId

dataLength = 0
表示数据长度

numChildren = 1
表示子节点的数量

2.3 查看根节点的名称

ls -w /

在这里插入图片描述

2.4 查看根节点的所有节点及子节点

ls -R /

在这里插入图片描述

3. get获取节点信息

语法:

get [-s] [-w] path

如获取根节点信息

get -s /

在这里插入图片描述

4. create创建节点

语法:

create 节点名称 节点内容

创建节点,如果节点内容含有空格则需要将其用双引号括起来
如创建名为a1的节点,内容为a

create /a1 a

然后获取子节点a1的信息,看到数据长度dataLengtha的长度1
在这里插入图片描述
创建子节点a2内容为aa bb cc,加双引号"",不加会报错

create /a2 "aa bb cc"

使用get命令查看数据长度dataLength8aa bb cc的长度,包含了空格在内
在这里插入图片描述

5. create -e创建临时节点

语法:

create -e 节点名称 节点内容

创建临时节点,当连接断开后,临时节点会被自动删除

如下创建临时节点a3内容为aaa

create -e /a3 aaa

然后查看所有节点列表

ls -s /

在这里插入图片描述
此时子节点a3已经创建好
关闭服务重启客户端,在zkCli的窗口按快捷键Ctrl+C关闭服务,zkCli.cmd回车启动
在这里插入图片描述
再次查看根节点所有节点数据

ls -s /

在这里插入图片描述
临时节点a3经没了

6. create -s创建顺序编号节点

语法:

create -s 节点路径 节点内容

创建顺序编号节点,即带序号的节点,序号的规则为新建节点的同级节点的数量的排序,从0开始,且包括临时节点和被删除的节点(即被删除后的节点也会算作序号)
如创建顺序节点/a4 aaaa

create -s /a4 aaaa

此时看到新建节点的名称变为a40000000003

然后查看根节点的所有节点数据

ls -s /

在这里插入图片描述

zookeeper节点不算在其中
因为同级的节点数为a1a2a3(临时节点,重启后已经没了)共三个节点
依次排序为0-1-2
a4的序号为a4加上分配的序号0000000003

顺序编号节点的特点如下:

  • 顺序编号节点会紧跟在节点名称后面,节点最终名称为节点名+序号,如/a40000000003
  • 顺序编号是一个递增的计数器
  • 顺序编号是由父节点维护,从已有的子节点个数开始(包括可临时节点和被删除的节点)
  • 如果子节点为空,则从0000000000开始,依次递增1
  • 在分布式系统中,顺序编号可用于为所有事件进行全局排序,客户端可根据序号推断事件的顺序

7. delete删除节点(空节点)

语法:

delete 节点路径

注:delete删除节点只针对于空节点,非空节点(其中含有子节点)delete删除不掉
先创建一些节点及子节点

create /a1/b1 b

在这里插入图片描述
查看根节点下的所有节点
在这里插入图片描述
如图可看到节点a1,a2,a40000000003,a5,a6,zookeeper
其中a1a2节点中含有子节点
我们先删除含有子节点的a1节点

delete /a1

报错,节点不是空的,即非空节点用delete删不掉
在这里插入图片描述
现在删不含子节点(也就是空节点)的节点a5

delete /a5

没报错,表示删除成功,然后查看所有节点看a5还在不在,已经不在了
在这里插入图片描述

8. deleteall删除节点(非空节点)

语法:

deleteall 节点路径

先查看非空节点a1中的子节点,确定它是含有子节点的非空节点

ls -s /a1

在这里插入图片描述
如图看到a1中含有b1,b2,b3三个子节点,说明它是一个非空节点
使用deleteall删除a1

deleteall /a1

在这里插入图片描述
然后查看根节点下的所有节点,发现a1节点已经没了

9. stat查看节点状态

查看节点状态,这个跟lsget的命令感觉一样

stat 节点路径

stat /

在这里插入图片描述


感谢阅读,祝君暴富!

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

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

相关文章

docker部署prometheus+grafana服务器监控(二) - 安装数据收集器 node-exporter

在目标服务器安装数据收集器 node-exporter 1. 安装数据收集器 node-exporter wget https://github.com/prometheus/node_exporter/releases/download/v1.6.1/node_exporter-1.6.1.linux-amd64.tar.gztar xvf node_exporter-1.6.1.linux-amd64.tar.gzmv node_exporter-1.6.1…

短视频矩阵系统搭建/源头----源码

一、智能剪辑、矩阵分发、无人直播、爆款文案于一体独立应用开发 抖去推----主要针对本地生活的----移动端(小程序软件系统,目前是全国源头独立开发),开发功能大拆解分享,功能大拆解: 7大模型剪辑法(数学阶乘&#xff…

SQL Server Management Studio (SSMS)的安装教程

文章目录 SQL Server Management Studio (SSMS)的安装教程从Microsoft官网下载SQL Server Management Studio安装程序。选中安装程序右键并选择“以管理员的身份运行”选项选择安装目录,单击“安装”按钮开始安装过程安装成功界面安装完成后,您可以启动S…

银河麒麟v10x86或者arm离线安装服务

银河麒麟v10x86或者arm离线安装服务 最近有个项目,甲方的服务器用的全是国产化服务器银河麒麟,架构是x86的然后也无法连接外网,需要离线安装服务正常思路就是找到离线安装的包,然后拷贝到现场的服务器中进行安装所以问题就在于如…

【python学习笔记——列表】

1、列表定义 列表是写在方括号 [] 之间、用逗号分隔开的元素列表。 空列表 list[]非空列表 列表定义时例如list[‘csdn’, ‘is’ ,‘good’ ,2023],直接给列表内赋值 2、列表索引规则 列表名[start:stop:step],前闭后开,即取索引为start…

机器学习——正则化

正则化 在机器学习学习中往往不知道需要不知道选取的特征个数,假如特征个数选取过少,容易造成欠拟合,特征个数选取过多,则容易造成过拟合。由此为了保证模型能够很好的拟合样本,同时为了不要出现过拟合现象&#xff0…

Macos视频增强修复工具:Topaz Video AI for mac

Topaz Video AI是一款使用人工智能技术对视频进行增强和修复的软件。它可以自动降噪、去除锐化、减少压缩失真、提高清晰度等等。Topaz Video AI可以处理各种类型的视频,包括低分辨率视频、老旧影片、手机录制的视频等等。 使用Topaz Video AI非常简单,…

基于SSM的二手车交易系统

基于SSM的二手车交易系统的设计与实现~ 开发语言:Java数据库:MySQL技术:SpringSpringMVCMyBatis工具:IDEA/Ecilpse、Navicat、Maven 系统展示 主页 登录界面 管理员界面 摘要 基于SSM(Spring、SpringMVC、MyBatis&a…

Vue中this指向问题

文章目录 1 由Vue管理的函数2 不被Vue管理的函数3 总结 1 由Vue管理的函数 computed 计算属性watch 监视属性filters (Vue3中已弃用且不再支持) 过滤器methods 上述属性里配置的函数this指向Vue实例,不要采用箭头函数写法,因为箭头函数没有自己的this对…

如何进行微服务测试?一文4个知识点带入门微服务测试!

关注留言点赞,带你了解最流行的软件开发知识与最新科技行业趋势。 本文将讨论微服务测试的重要性、挑战和最佳实践。 微服务架构是一种越来越流行的构建复杂分布式系统的方法。在此体系结构中,大型应用程序被分成较小的、独立的服务,这些服务…

大数据平台架构及规划

梳理了数据平台及未来规划,具体如下: 整体架构: 当前建设进展: 部署架构 部署架构2: Flink 实时计算平台架构 版本1: 版本2: 离线平台架构: 未来规划:

Node.js 的 CommonJS ECMAScript 标准用法

目录 一、前言二、CommonJS 标准使用方法 三、ECMAScript 标准使用方法 四、常用命令总结 一、前言 本文主要是介绍 Node.js 的 CommonJS & ECMAScript 标准用法 如果对你有帮助,欢迎三连 收藏点赞关注!!! ---- NickYoung 二、…

公有云容灾,中小企业最具性价比的选择

备份容灾的成本门槛 业务数据是企业的核心,为了防止意外灾难引发的数据损失、业务系统宕机等情况,企业可以选择部署备份容灾,以此保证系统和服务不会在意外发生时断线,以及数据的完整性。 在过去,只有大型企业会部署…

vue全局字典值获取方法一例

vue全局字典值获取方法一例 //全局加载字典值 下面采用config.dicts[‘sys_yes_no’] 或config.dicts.sys_yes_no config为public目录下全局配置对象 import * as apiDict from "/api/system/dict"//全局加载字典值 下面采用config.dicts[sys_yes_no] 或config.di…

SourceTree 使用

如何拉取远程仓库?如何拉去远程分支?如何创建本地分支?如何删除本地分支?如何删除远端分支? 删除了远程分支,如果本地还有此分支,那么是可以通过推送本地分支来还原远端分支。如何合并本地分支&…

一文了解独立站黑科技:clock斗篷技术

FP产品作为高利润高回报的产品,它热度在出海商品中是一直居高不下的。但这类产品在独立站的运营中往往会遇到很多问题,例如最让商家头疼的投流问题,FP产品的推广营销很容易遭到平台的管控封禁,这时候往往会用到市面上现在很火的黑…

一个Entity Framework Core的性能优化案例

概要 本文提供一个EF Core的优化案例,主要介绍一些EF Core常用的优化方法,以及在优化过程中,出现性能反复的时候的解决方法,并澄清一些对优化概念的误解,例如AsNoTracking并不包治百病。 本文使用的是Dotnet 6.0和EF…

【网络协议】聊聊网络路由相关算法

如何配置路由 路由器是一台网络设备,多张网卡,当一个入口的网络包到达路由器时,会根据本地的信息库决定如何正确的转发流量,通常称为路由表 路由表主要包含如下 核心思想是根据目的 IP 地址来配置路由 目的网络:要去…

Babylonjs学习笔记(五)——创建PBR材质

书接上回,这里讨论PBR材质!!! // 创建天空盒/* */const createSkyBox (scene:Scene):void>{const envTex CubeTexture.CreateFromPrefilteredData(./env/environment.env,scene)scene.environmentTexture envTex;scene.cre…

Games104现代游戏引擎笔记 网络游戏架构基础

挑战1:网络同步 挑战2:是网络的可靠性,包括应对网络的延迟,丢包和掉线 挑战3: 反作弊和安全系统,因为网络游戏的本质是经济系统 挑战4:多样性(不同设备,不同服务器),在不停服的情况下热更新 挑战5:大量人数时对高并发…