1.刷新生效的四步
栗子:如果你修改了bi-service-dev.properties里的common_service_config=devdev,把devdev改成devdev111。如果你启动客户端bi-service服务,是可以读取到新的devdev111.但是启动客户端成本较大,我们需要实现热更新。
解决方法:
1.客户端pom.xml中引入了spring-boot-starter-actuator。2.在controller的类上加了注解@RefreshScope。加这个的目的是为了在修改配置后不启动客户端。但此时,修改后,客户端并没有拉取到新的值。3.需要在客户端applicaiton.yml加上
management:
endpoints:
web:
exposure:
include: refresh,health,info
此时,在所有服务运行过程中,如果你修改了bi-service-dev.properties,改成devdev111。
4.你需要在postman或者黑屏里执行
curl -X POST http://localhost:8084/actuator/refresh。注意域名和ip是客户端的。执行后,你在客户端controller下次获取到的值就变成devdev111.
具体配置详见我的另一篇文章springcloud config配置中心步骤以及踩的坑
本文介绍如何在Spring Cloud中实现配置的热更新,通过引入spring-boot-starter-actuator依赖,使用@RefreshScope注解及配置management.endpoints.web.exposure.include属性,最后通过curl命令触发刷新,实现配置变更的即时生效。
167万+

被折叠的 条评论
为什么被折叠?



