zookeeper-1
1.采用的一致性协议ZAB(zookeeper atomic broadcast)
2.zookeeper用来保证分布式系统中的数据一致性问题, 包括:顺序一致性, 原子性, 单一视图, 可靠性, 实时性
3.zk包含的基本概念:集群角色, 会话(session), 数据节点(znode), 版本, 事件监听器(watcher), ACL(权限控制)
4.zk的可执行脚本
5.客户端脚本zkCli.sh
连接zk服务器 zkCli.sh -server ip:port
客户端脚本命令: create, ls, get, set, delete
6.zk的应用场景
1) 数据发布订阅, 也叫配置中心(zk使用推拉相结合的方式), 例如使用zk来管理客户端集群中共享的配置资源
2) 命名服务, 例如通过创建顺序节点来生成分布式数据库的唯一id
3) 负载均衡(zk的负载均衡实现是通过轮询的方式)
4) 分布式协调/通知(实则就是分布式系统间的通信): 心跳检测(通过创建临时节点), 工作进度汇报(通过不断的修改临时节点数据内容), 系统调度(指的是像storm这种由一个控制台和很多客户端组成的分布式集群,nimbus是控制台supervisor是客户端,二者间通过zk连接)
5) 集群管理 基本同4
6) Master选举(利用zk保证一个数据节点只能被一个客户端创建, 或者说当很多客户端同时创建一个节点时, 只能有一个客户端创建成功过, 这个创建成功的客户端就被选举为master节点) solr中leader的选举就是通过此方法
7) 分布式锁
8) 分布式队列

浙公网安备 33010602011771号