Zookeeper入门

ZooKeeper 是一个开源的分布式协调架,主要用来解决分布式集群中应用系统的一致性问题

本质

分布式的文件存储系统(Zookeeper=文件系统+监听机制),是一个基于观察者模式设计的分布式服务管理框架

zookeeper的数据结构

Zookeeper的层次模型称作Data Tree,Data Tree的每个节点叫作Znode。每个节点都可以保存数据,默认能够存储 1MB 的数据,每个 ZNode 都可以通过其路径唯一标识,每个节点都有一个版本(version从0开计数)。

1.文件系统的树形结构便于表达数据之间的层次关系

2.文件系统的树形结构便于为不同的应用分配独立的命名空间( namespace)

节点分类

类型 生命周期 创建示例
持久节点 创建该节点的客户端与服务端的会话关闭了,该节点依然不会被删除 create /locks
临时节点 当创建该临时节点的客户端因会话超时或发生异常而关闭时,该节点也相应在 ZooKeeper 服务器上被删除。 create -e /locks/lock
有序节点 在持久节点和临时节点特性的基础上,增加了一个节点有序的性质。在创建有序节点的时候会自动使用一个单调递增的数字作为后缀 create -e -s /locks/lock
容器节点 当一个容器节点的最后一个子节点被删除后,容器节点也会被删除 create -c /work
TTL节点 当一个TTL节点在TTL内没有被修改并且没有子节点,会被删除。(需要配置extendedTypesEnabled=true) ate -t 3000 /ttl_node
相关推荐
兆子龙12 小时前
ahooks useRequest 深度解析:一个 Hook 搞定所有请求
java·javascript
兆子龙12 小时前
React Suspense 从入门到实战:让异步加载更优雅
java·javascript
咕白m62514 小时前
Java 实现 Excel 转 HTML:完整示例
java
RealPluto15 小时前
Spring AOP 失效排查
java·spring
码路飞15 小时前
热榜全是 OpenClaw,但我用 50 行 Python 就造了个桌面 AI Agent 🤖
java·javascript
Nyarlathotep011315 小时前
LinkedList源码分析
java·后端
用户83071968408215 小时前
Java 告别繁琐数据统计代码!MySQL 8 窗口函数真香
java·sql·mysql
带刺的坐椅16 小时前
SolonCode v0.0.20 发布 - 编程智能体(新增子代理和浏览器能力)
java·ai·agent·solon·solon-ai·claude-code·openclaw
会员源码网17 小时前
数字格式化陷阱:如何优雅处理 NumberFormatException
java