zookeeper-1-基本概念
初次接触zookeeper大概是在2015年左右,一直都没有亲自把玩过。现如今大家都转向etcd等新鲜玩意了,才回过头来到故纸堆里挖掘挖掘,大概是因为自己喜欢历史
闲话少说,要了解zookeeper,首先要知道它提供哪些功能,用来干嘛的,然后再了解它的内部原理,是如何实现所提供的功能的
以下主要参考:
Apache ZooKeeper Tutorial – ZooKeeper Guide for Beginners
zookeeper架构
数据模型
非常类似文件系统层级结构
交互流程
客户端读
客户端写
zk 节点间交互同步等
重要概念
1. znode
- 一般节点
- 节点状态(stat)
- 临时节点(Ephemeral Nodes,客户端终止,则节点删除)
- 序列节点(Sequence Nodes)
理解节点的概念非常重要,是后续核心功能的基础
2. watch
watch是一次性的,后续要监听的话,需要反复注册
3. 选主(Leader Election)
选主流程
4. session
客户端会话管理
5. 其它
如lock, barrier, queue,还有其它概念可以选择了解
经过上面这些基本阅读,就能知道zk是干嘛的,自身大概组成,下面就可以搭建集群自己去把玩一下了
参考
ZooKeeper Recipes and Solutions