张坤的个人博客

  • 首页
  • 分类
  • 标签
  • 日志

  • 搜索
Jenkins RabbitMQ Zookeeper IDEA Logstash Kibana ELK NIO Netty Spring Cloud Golang DataX Elasticsearch React Native Mysql H2 Socket Spring Boot Kafka Mybatis Sqlmap Vue Postgresql Docker Vert.x Flutter Flink Redis

Zookeeper基本操作

发表于 2020-06-28 | 分类于 Zookeeper | 0 | 阅读次数 35

创建节点

create [-s] [-e] path data
  • -s:是否有序,创建之后,后面自动加上10为数字,并自动递增
    image.png
  • -e:是否是临时节点,如果创建节点时指定-e参数,在客户端断开连接时节点自动销毁
  • path:key
  • data:值

查看节点

ls [-s] [-w] [-R] path
  • -s:查看节点所有子节点并输出节点的元数据
  • -w:给注册监听器,监听子节点的新增和删除,只能监听第一层子节点
  • -R:递归查看所有子
get [-w] [-s] path
  • -w:监听节点的修改和删除

  • -s:查看节点的元数据

    image.png

    image.png

只查看节点的元数据,不查看数据

stat [-w] path
  • -w:和get命令的监听器用法一样

image20200628182304393.png

所有的监听器是一次性的,用完之后得再注册一遍

修改节点

set [-v dataVersion] path data
  • -v:数据版本号,每修改一次节点元素据dataVersion+1。如果修改时加上-v,那么它指定的dataVersion必须要等于现在节点的dataVersion,否则修改失败,小于或大于都不行。
    image.png

删除节点

delete [-v dataVersion] path

删除操作-v的作用和修改操作一样
image.png

如果删除的节点下还有子节点,需要用deleteall命令删除

deleteall path

节点元素据

  • cZxid:节点创建时的事务ID
  • ctime:节点创建时间
  • mZxid:节点最后一次修改事务ID
  • mtime:节点最后一次修改时间
  • pZxid:节点的子节点最后一次被修改的事务ID,比如 /aa/bb 被修改了,/aa 的 pZxid 就是 /aa/bb 的 mZxid
  • cversion:子节点被修改的次数,没修改一次 /aa/bb ,/aa 的cversion就 +1
  • dataVersion:节点版本号,没修改一次当前节点就 +1 ,创建节点是初始化为 0
  • aclVersion:节点ACL的更改次数,和权限有关
  • ephemeralOwner:如果时临时节点,ephemeralOwner时SessionID。如果是持久节点,值为 0
  • dataLength:数据内容长度,单位是字节。用的是UTF-8编码,一个汉字占三个字节,一个字母只占一个字节
  • numChildren:子节点的个数,只会统计第一层子节点,不会统计子节点的子节点

持久化节点:

image20200628181745404.png

临时节点:

image20200628182026156.png

# Jenkins # RabbitMQ # Zookeeper # IDEA # Logstash # Kibana # ELK # NIO # Netty # Spring Cloud # Golang # DataX # Elasticsearch # React Native # Mysql # H2 # Socket # Spring Boot # Kafka # Mybatis # Sqlmap # Vue # Postgresql # Docker # Vert.x # Flutter # Flink # Redis
Zookeeper快速入门
Zookeeper权限模型
  • 文章目录
  • 站点概览
会Coding的猴子

会Coding的猴子

57 日志
19 分类
28 标签
RSS
Github
Creative Commons
© 2021 会Coding的猴子
由 Halo 强力驱动
|
主题 - NexT.Gemini v5.1.4

湘ICP备18011740号