Zookeeper
一.分布式主从模式
1.主机选举: 整个系统初始化时和现有主机崩溃时
2.主机master崩溃:crash detection检测主机是否崩溃
3.节点worker崩溃:group membership主机把特定的任务分给特定的worker
4.主从机联系崩溃:metadata management调度
二.zookeeper:
ZooKeeper是一个分布式应用程序协调服务
是基于shared storage模式实现协同 not a out-of-box tool
三.协调方式
发送消息,每个节点都需要消息收发
共享存储,zookeeper使用共享存储的方式
四.发送消息协调方式的缺点
网络延迟,每个节点执行速度不一致,节点时间不一致,无法区分真正原因等,导致可能出现两个master,大脑分离
五.zookeeper中存储结构
data tree:类似与文件夹
六.API
七.watcher
帮助client去知道znode的变化
避免轮询znode状态
只会保留一次
client订阅watcher后,所订阅的路径中发生变化时,zookeeper会通知client,然后client主动拉取文件
八.znode
persistent znode 长期保存数据,一旦创建除非delete,否则一直存在
ephemeral znode 临时保存,一旦发现创建者失去连接,就会删除node
sequential znode 顺序型, 和上边两种znode进行组合
九.zookeeper中结构
1.client
连接:tcp连接,只能连接同时间段或者更新的server,session timeout
read:读server上同时间段或者更新的内容
write:只能写到master上
2.zxid
数字越大表示时间越近
增删改zxid会增加
3.
.
4.需要多步沟通,准确性高
5.速度快,准确性差
6.usage
不适合大量数据存储