当前位置: 首页 > news >正文

zookeeper快速入门三:zookeeper的基本操作

 在zookeeper的bin目录下,输入./zkServer.sh start和./zkCli.sh启动服务端和客户端,然后我们就可以进行zookeeper的基本操作了。如果是windows,请参考前面章节zookeeper快速入门一:zookeeper安装与启动

目录

一、节点的增删改查

二、zookeeper的其他命令

2.1   ls path:列出path下的文件

2.2  stat path:查看节点状态

2.3  ls2 path:列出path节点的子节点及状态

三、其他


一、节点的增删改查

zookeeper节点的增删改查命令很简单,唯一需要注意的是create命令有两个参数,-s代表顺序节点,-e代表临时节点。

我们先用create /temp 123命令创建一个名为temp的znode节点,123是这个节点保存的data值。

用get /temp命令查看

如果你输入的是get temp,那么会出现Command failed: java.lang.IllegalArgumentException: Path must start with /character错误,这是因为在zookeeper中,没有相对路径的概念,所有的节点都需要用绝对路径表示,也即所有节点名称都会以“/”开头。

如果我们要创建临时节点,则给create命令增加一个-e的参数。

修改temp节点的数据,set /temp  456

再用get /temp查看

可以看到,/temp节点的数据已经从123变成了456。在zookeeper中,对于数据的修改都是全量修改,没有只修改某一部分这种说法。这也是为什么zookeeper的修改命令是set而不是update的原因。

需要注意的是,但我们修改了数据之后,可以看到mZxid(修改事务id)已经从原来的0X26变成了0x27。

如果要删除某个节点,则用delete path即可。

需要注意的是:

set path data [version]命令,如果我们多次修改,会发现  dataVersion ,也就是数据版本,在不停得发生变化(自增)如果我们在set的时候手动去指定了版本号,就必须和上一次查询出来的结果一致,否则 就会报错。

这个可以用于我们在修改节点数据的时候,保证我们修改前数据没被别人修改过。因为如果别人修改过了,我们这次修改是不会成功的

delete path [version]

删除指定节点数据,其version参数的作用于set指定一致

二、zookeeper的其他命令

2.1   ls path:列出path下的文件

与linux命令类似,ls命令用于列出给定路径下的zookeeper节点

2.2  stat path:查看节点状态

我们查看持久节点temp和临时节点short的状态,主要不同是画红线部分,从ephemeralOwner的值可以判断这个节点是持久节点还是临时节点。0X0代表的是持久节点。如果节点为临时节点,那么它的值为这个节点拥有者的session ID。

2.3  ls2 path:列出path节点的子节点及状态

我们先给temp节点创建一个child1的子节点,接着用ls2 /temp查看它的子节点和状态。

三、其他

我们可以输入-h获取zookeeper的所有命令

http://www.lryc.cn/news/320118.html

相关文章:

  • oracle 19c打补丁到19.14
  • Spring Boot(六十九):利用Alibaba Druid对数据库密码进行加密
  • 51单片机—DS18B20温度传感器
  • Monorepo 解决方案 — 基于 Bazel 的 Xcode 性能优化实践
  • Unity触发器的使用
  • docker compose部署rabbitmq集群
  • 数据结构/C++:红黑树
  • 【LabVIEW FPGA入门】浮点数类型支持
  • ffmpeg 滤镜实现不同采样率多音频混音
  • UserTCP 传输数据时如何保证数据的可靠性?并以LabVIEW为例进行说明
  • 基于粒子群算法的分布式电源配电网重构优化matlab仿真
  • mysql提权总结(自学)
  • [数据集][目标检测]铝片表面工业缺陷检测数据集VOC+YOLO格式400张4类别
  • 晶体管-二极管三极管MOS管选型参数总结
  • ssh命令——安全远程连接Linux服务器
  • Ansible非标记语言YAML与任务剧本Playbook
  • WPF监控平台(科技大屏)[一]
  • HTML详细教程
  • 【excel】常用的50个函数与基础操作(统计函数)
  • MATLAB中的cell数组和结构体
  • Python深度学习之路:TensorFlow与PyTorch对比【第140篇—Python实现】
  • Unity中UGUI中的PSD导入工具的原理和作用
  • 删除 Oracle 软件和数据库教程
  • C语言自学笔记8----C语言Switch语句
  • 分布式搜索引擎(3)
  • PostgreSQL开发与实战(6.3)体系结构3
  • ISIS接口MD5 算法认证实验简述
  • Vue项目的搭建
  • ABB新款ACS880-04-650A-3逆变器模块ACS88004650A3加急发货
  • Science Robotics 封面论文:美国宇航局喷气推进实验室开发了自主蛇形机器人,用于冰雪世界探索