《云计算技术系列丛书 云原生分布式存储基石: etcd深入解析》—2.3.2消息发布和订阅
【摘要】 本书摘自《云计算技术系列丛书 云原生分布式存储基石: etcd深入解析》一文中的第2章,第2.3.2节,作者是华为云容器服务团队、杜军等编著。
2.3.2 消息发布和订阅
在分布式系统中,最为适用的组件间通信的机制是消息的发布和订阅机制。
具体而言就是,设置一个配置共享中心,消息提供者在这个配置中心发布消息,而消息使用者则订阅他们关心的主题,一旦所关心的主题有消息发布,就会实时通知订阅者。通过这种方式,我们可以实现发布式系统配置的集中式管理和实时动态更新。
1. etcd管理应用配置信息更新
这类场景的使用方式通常是,应用在启动的时候主动从etc获取一次配置信息,同时,在etcd节点上注册一个Watcher并等待,以后每当配置有更新的时候,etcd都会实时通知订阅者,以此达到获取最新配置信息的目的。
2.分布式日志收集系统
这个系统的核心工作是收集分布在不同机器上的日志。
收集器通常按应用(或主题)来分配收集任务单元,因此可以在etcd上创建一个以应用(或主题)为名目的目录,并将这个应用(或主题)相关的所有机器IP以子目录的形式存储在目录下。然后设置一个递归的etcd Watcher,递归式地监控应用(或主题)目录下所有信息的变动。这样就能够实现在机器IP(消息)发生变动时,系统能够实时接受收集器调整的任务分配。
3.系统中心需要动态自动获取与人工干预修改信息的请求内容
通常的解决方案是对外保留接口(例如JMX接口),来获取一些运行时的信息或提交修改的请求。而引入etcd之后,只需要将这些信息存放在指定的etcd目录中,即可通过HTTP接口直接被外部访问(如图2-6所示)。
图2-6 etcd做消息通知
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)