Zookeeper应用场景

来源:互联网 发布:mac安装的软件卸载 编辑:程序博客网 时间:2024/06/15 18:35

实现数据的订阅和发布

案例:
比如一台机器发布数据,其他的机器都能够收到发布的最新数据
实现思路:
1.创建一个节点,这个节点是数据发布方的节点,存储数据(1mb)
2.其他机器通过监听这个节点的数据变化,拿到最新数据

实现配置信息的统一管理

实现思路参考数据的订阅发布

实现集群管理

实现思路:
1.客户端注册一个临时节点(临时顺序节点)
2.当宕机或失去连接后,临时节点消失
3.通过API可以监听到这个事件的变化,从而做后续的业务处理

实现分布式协调效果(屏障效果barriar)

案例:比如,成绩排名,排名的前提是前两台机器都把活做完了,才能做统计排名。
这相当于是分布式环境下的线程同步协调
实现思路:
1.可以创建一个/score节点,然后成绩统计节点把活做完后,在/score创建一个子节点
2.做最后统计排名的节点,去监听/socre子节点的状态变化以及统计子节点的数量,如果是2 个,就可以开始干活了。

实现分布式锁的效果(共享锁)

实现思路:
1.创建一个/lock路径
2.三个机器争抢去在/lock路径下去抢注Xxx顺序节点,最先抢注的节点的顺序号肯定是最小的
3.然后通过比较,去决定哪个机器去用这个共享资源。

0 0