Skip to content

Latest commit

 

History

History
54 lines (15 loc) · 1.26 KB

135.md

File metadata and controls

54 lines (15 loc) · 1.26 KB

135、一清二楚:再次回头对ZooKeeper特性的总结

核心原理,比kafka、hdfs、hbase之类的要简单很多,最最底层的技术,很多人都依赖他

《020_一清二楚:再次回头对ZooKeeper特性的总结》

集群模式部署

一般奇数节点,因为你5台机器可以挂2台,6台机器也是挂2台,不能超过一半的机器挂掉,所以5台和6台效果一致,那奇数节点可以减少机器开销,小集群部署,读多写少

主从架构:Leader、Follower、Observer(一般刚开始没必要用)

内存数据模型:znode,多种节点类型

客户端跟zk进行长连接,TCP,心跳,维持session

zxid,高32位,低32位

ZAB协议,2PC,过半ack + 磁盘日志写,commit + 写内存数据结构

支持Watcher机制,监听回调通知

顺序一致性:消息按顺序同步,但是最终才会一致,不是强一致

高性能,2PC中的过半写机制,纯内存的数据结构,znode

高可用,follower宕机没影响,leader宕机有数据不一致问题,新选举的leader会自动处理,正常运行,但是在恢复模式期间,可能有一小段时间是没法写入zk的

高并发,单机leader写,Observer可以线性扩展读QPS