2019年面试官最喜欢问的28道ZooKeeper面试题(28)

· 数据存储:将数据(配置信息)存储到 Zookeeper 上的一个数据节点

· 数据获取:应用在启动初始化节点从 Zookeeper 数据节点读取数据 , 并在该节点上注册一个数据变更 Watcher

· 数据变更:当变更数据时 , 更新 Zookeeper 对应节点数据 , Zookeeper会将数据变更通知发到各客户端 , 客户端接到通知后重新读取变更后的数据即可 。

负载均衡

zk 的命名服务

命名服务是指通过指定的名字来获取资源或者服务的地址 , 利用 zk 创建一个全局的路径 , 这个路径就可以作为一个名字 , 指向集群中的集群 , 提供的服务的地址 , 或者一个远程的对象等等 。

分布式通知和协调

对于系统调度来说:操作人员发送通知实际是通过控制台改变某个节点的状态 , 然后 zk 将这些变化发送给注册了这个节点的 watcher 的所有客户端 。

对于执行情况汇报:每个工作进程都在某个目录下创建一个临时节点 。 并携带工作的进度数据 , 这样汇总的进程可以监控目录子节点的变化获得工作进度的实时的全局情况 。

推荐阅读