《企业级大数据平台构建:架构与实现》——2.2.5 节点状态监听
【摘要】 本书摘自《企业级大数据平台构建:架构与实现》——书中第2章,2.2.5节,作者是朱凯。
2.2.5 节点状态监听
简单来说,Zookeeper在Znode上设计了多种监听事件,例如创建一个子节点、修改节点、删除节点等。我们的客户端程序可以在这些监听事件中注册自己的回调函数,当某个事件发生的时候,就会自动触发其相应的回调函数。注意,在Zookeeper中回调函数是一次性的,这意味着一旦函数被触发,它就会被移出监听列表。如果程序需要永久的监听事件,就需要持续的进行回调函数注册动作。
Zookeeper的节点监听机制是一项非常有意思的能力,利用这项能力可以在Zookeeper
的基础上实现很多炫酷的功能。例如:
1.?服务发现
微服务架构是现在很热门的一种服务架构模式,其中的服务发现功能就可以通过Zookeeper实现。只需要在一个指定Znode上注册并创建子节点的监听事件,例如/service节点。当有新的服务上线之后便在/service节点下创建一个代表相应服务的子Znode,这时就会触发相应的回调事件,我们的主程序就能知晓新上线的服务信息了。
2.?配置同步
在分布式系统中,当服务的配置发生变动时,如何快速及时地将配置变化更新到各个服务器,一直都是一个十分头疼的问题,借助Zookeeper的事件监听机制便能轻松实现。
首先,在Zookeeper上创建一个指定的Znode用于存储配置信息,例如/app/conf?ig
节点。接着,让分布式系统中所有的服务进程监听/app/conf?ig节点的数据修改事件。当配置发生变化的时候,各个服务进程便会触发配置修改的回调函数,这样便能实现快速、可靠的配置同步功能了。
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
作者其他文章
评论(0)