Zoookeeper详细学习笔记
zookeeper:提供开源的分布式配置服务,主要由同步服务,命名注册。通过冗余服务实现高可用性。
zookeeper特点:
- 一致性:数据在多个副本之间保持一致性,所有节点访问同一份最新的数据副本。
- 分区容错性:网络分区故障时,仍保证对外满足一致性和可用性服务。
zookeeper客户端连接服务端默认端口:2181
ZooKeeper命名空间内部拥有一个树状的内存模型,其中各节点被称为znode。
zookeeper 权限控制ACL
访问控制表(ACL)可以针对节点设置相关读写等功能,保证数据安全性。
zookeeper会话状态
zookeeper客户端命令
ls path 用于查看某个路径下目录列表
ls2 path 用于查看某个路径下详细目录列表
get path [watch] 用于获取节点数据和状态信息 【watch】对节点进行事件监听。
eg:对节点1进行事件监听后,改变节点2.终端1会出现对应事件。
stat path [watch] 用于查看节点状态信息
create [-s] [-e] path data acl
-s 表示顺序节点;-e表示临时节点;临时节点不能创建子节点。path表示要创建节点的路径;data表示要在该点存储的数据;path访问权限设置,默认world
set path data [version] 用于修改节点存储的数据
path表示要节点的路径;data表示要在该点存储的数据;version表示版本号,可选项。使用set命令前,先使用get命令获取版本号,版本不对不能修改
zookeeper节点特点
- 同一节点key名称唯一
- 创建节点时,必须带上全路径
- session关闭后,临时节点清除
- 自动创建顺序节点
- watch监听节点变化
- delete只能一层一层删除,新版本可一deleteall删除全部
zookeeper领导者选举
zookeeper数据同步流程
补充:
zookeeper 四字命令