欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

使用Spring Cloud Bus自动动态刷新配置文件的流程总结

程序员文章站 2022-03-03 20:08:49
我们都知道在Spring Cloud技术中,会有一个分布式配置中心来专门管理各个微服务的配置文件。但有时就避免不了需要去修改配置,而一修改配置的话,Spring Cloud Config仅支持运维人员手动发送POST请求。当微服务实例一多之后,就需要一个又一个的发送POST请求。这样很繁琐,也没有必要,非常不符合我们讲的 “高内聚,低耦合“。这个时候就需要用到新组件了,Spring Cloud Bus。关于这个技术,我上一篇博客也记录了,这里直接进入正题。(该篇无代码)首先,分布式配置中心(Co...

我们都知道在Spring Cloud技术中,会有一个分布式配置中心来专门管理各个微服务的配置文件。但有时就避免不了需要去修改配置,而一修改配置的话,Spring Cloud Config仅支持运维人员手动发送POST请求。

当微服务实例一多之后,就需要一个又一个的发送POST请求。这样很繁琐,也没有必要,非常不符合我们讲的 “高内聚,低耦合“


这个时候就需要用到新组件了,Spring Cloud Bus。关于这个技术,我上一篇博客也记录了,这里直接进入正题。(该篇无代码)

使用Spring Cloud Bus自动动态刷新配置文件的流程总结

  1. 首先,分布式配置中心(Config Server) 会去Git仓库上拉取配置文件,然后顺便订阅一下消息中间件中的一个主题(主题默认是Spring Cloud Bus)。这里说明一下,Spring Cloud Bus目前支持RabbitMQ、Kafka,至于你要用哪个,随便你。
  2. 第二步,微服务实例(Client application) 会去找Config Server拿自己所需要的配置文件。同时也顺便去消息中间件中订阅主题。
  3. 使用git命令或在GitHub上直接修改配置文件,来模拟现实开发中配置文件变更的情况。
  4. 发送POST请求给Config Server
  5. 先更新配置文件这一消息,发送到消息中间件中。这里因为大家都订阅了一个主题,一个POST请求就可以让所有的微服务都知道配置文件更新了。所谓 “一个得病,全家那啥”
  6. 上一步介绍到了,因为现在主题里有消息,所以微服务实例们可以直接去读取该消息。
  7. 微服务实例向Config Server 再拉取一次最新的配置文件。

感谢观看