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
相关推荐
好家伙VCC1 小时前
【无标题】
java
小碗羊肉2 小时前
【JavaWeb | 第十一篇】文件上传(本地&阿里云OSS)
java·阿里云·servlet
吾疾唯君医2 小时前
Java SpringBoot集成积木报表实操记录
java·spring boot·spring·导出excel·积木报表·数据文件下载
Byron Loong2 小时前
【c++】为什么有了dll和.h,还需要包含lib
java·开发语言·c++
hexu_blog3 小时前
vue+java实现图片批量压缩
java·前端·vue.js
头歌实践平台3 小时前
Hadoop开发环境搭建
java·大数据·hadoop
Seven973 小时前
一致性Hash算法:如何实现分布式系统中的高效数据分片?
java
摇滚侠3 小时前
IDEA 生成 try catch 快捷键
java·ide·intellij-idea
阿旭超级学得完4 小时前
C++11包装器(function和bind)
java·开发语言·c++·算法·哈希算法·散列表