前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Spring Cloud Bus集成Spring Cloud Config Server实现全局配置的自动刷新(二)

Spring Cloud Bus集成Spring Cloud Config Server实现全局配置的自动刷新(二)

原创
作者头像
堕落飞鸟
发布2023-04-16 07:52:47
2390
发布2023-04-16 07:52:47
举报
文章被收录于专栏:飞鸟的专栏

三、Spring Cloud Config Server 的集成

添加依赖

首先需要在项目的 pom.xml 文件中添加 Spring Cloud Config Server 和 Spring Cloud Bus 的依赖:

代码语言:javascript
复制
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-config-server</artifactId>
</dependency>
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-bus-amqp</artifactId>
</dependency>

这里选择使用 RabbitMQ 作为消息代理,因此添加了 spring-cloud-starter-bus-amqp 依赖。

配置 Config Server

在项目的 application.properties 文件中添加 Config Server 的配置::

代码语言:javascript
复制
spring.application.name=config-server
spring.cloud.config.server.git.uri=https://github.com/your-git-repo/config-repo
spring.cloud.config.server.git.username=your-username
spring.cloud.config.server.git.password=your-password
spring.cloud.config.server.git.clone-on-start=true
spring.cloud.config.server.git.basedir=/tmp/config-repo
spring.cloud.config.server.git.search-paths=config
spring.rabbitmq.host=localhost
spring.rabbitmq.port=5672
spring.rabbitmq.username=guest
spring.rabbitmq.password=guest
spring.cloud.bus.enabled=true

这里配置了 Config Server 的基本信息,包括 Git 仓库的 URI、用户名和密码,以及 RabbitMQ 的连接信息。另外,还开启了 Spring Cloud Bus。

添加 Spring Cloud Bus 到 Config Server

为了实现全局配置的自动刷新,还需要在 Config Server 中添加 Spring Cloud Bus 的依赖。可以在项目的 pom.xml 文件中添加以下依赖:

代码语言:javascript
复制
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-config-monitor</artifactId>
</dependency>

这里添加了 spring-cloud-config-monitor 依赖,它可以将 Config Server 的事件发送到 Spring Cloud Bus。

配置 Spring Cloud Bus 到 Config Server

接下来需要在 Config Server 的 application.properties 文件中添加 Spring Cloud Bus 的配置:

代码语言:javascript
复制
spring.cloud.bus.enabled=true
spring.cloud.bus.trace.enabled=true
spring.cloud.bus.refresh.enabled=true
spring.cloud.bus.destination=config

这里配置了开启 Spring Cloud Bus,并且配置了刷新配置的事件和消息的目的地为 config。另外,开启了 Spring Cloud Bus 的 trace 日志,可以方便地查看 Bus 消息的发送情况。

监听 Config Server 的事件

最后需要在微服务的配置文件中添加监听 Config Server 的事件:

代码语言:javascript
复制
spring.cloud.config.uri=http://localhost:8888
spring.cloud.config.name=my-service
spring.cloud.config.profile=dev
spring.cloud.config.label=master
spring.cloud.config.enabled=true
spring.cloud.config.monitor.enabled=true

这里配置了 Config Server 的访问地址、应用名称、环境以及标签等信息。同时开启了配置的监控,可以实时监测配置的变化。

至此,通过 Spring Cloud Bus 集成 Spring Cloud Config Server 实现全局配置的自动刷新的操作已经完成。在修改配置文件之后,只需要发送 /actuator/bus-refresh 接口的请求,就可以实现全局的配置自动刷新。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 三、Spring Cloud Config Server 的集成
    • 添加依赖
      • 配置 Config Server
        • 添加 Spring Cloud Bus 到 Config Server
          • 配置 Spring Cloud Bus 到 Config Server
            • 监听 Config Server 的事件
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档