Spring Cloud Config配置属性刷新之自动刷新

本文详细介绍如何在Spring Cloud Config中实现配置属性的自动刷新。通过添加RefreshScope注解、处理GitHub webhook、配置rabbitMQ及Spring Cloud Bus,实现在修改GitHub配置后自动更新ConfigClient的属性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

接上一篇的博客。Spring Cloud Config配置属性自动刷新,修改完GitHub仓库的配置属性后Config client会自动拉取来更新配置属性。

1、先要给Config client的Controller类加上RefreshScope注解。

2、Config Server中处理webhook

加上monitor依赖,待会会用上的。用于对接GitHub的webhook,触发自动刷新配置。

“/monitor“端点使用Spring Cloud Stream发布通知消息给参与的Config Server客户端。

为了避免硬编码特定的消息实现,监控器会作为Spring Cloud Stream的源,发布消息到流中并让底层的绑定机制处理消息发送的特定功能。这里使用RabbitMQ,将依赖添加到Config Server的pom文件。用于对接rabbitMQ来广播服务更新事件,通知相关的服务进行配置更新。

3、Config Server的application.yml配置

本地上面运行可以不用配置rabbitmq的地址。

3、在Config Server和Config Client中添加依赖启动自动刷新 spring cloud bus

 4、在GitHub上面配置webhook

Payload URL 不可以写成本地的Config Server的端口(localhost:8888),我用的是ngrok转成外网地址。ngrok可以网上搜索一下怎么使用。ngrok转换的地址可以使用八小时,之后需要重新转换。

/monitor端点是之前在Config Server依赖中启用的端点。

5、将Config Server 和Config Client启动起来可以看到本地的Rabbitmq上面有两个队列

6、再尝试修改GitHub仓库的配置属性,Config Client会自动刷新,控制台可以看到信息。使用curl 来查看可以看到配置已经更新。

到这里就完成了自动刷新的配置。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值