Spring Cloud 动态刷新配置信息教程详解

时间:2022-11-22 15:47:56

有时候在配置中心有些参数是需要修改的,这时候如何不重启而达到实时生效的效果呢?

添加依赖

?
1
2
3
4
5
6
7
8
<dependencies>
  ...
  <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-actuator</artifactId>
  </dependency> 
  ...
</dependencies>

spring-boot-starter-actuator:这个模块的/refresh(POST请求)端点可以刷新配置,更多的使用参考Spring Boot系列文章。

生效前提

在需要刷新的Bean上添加@RefreshScope注解。

?
1
2
3
4
5
6
@RefreshScope
@RestController
public class TestController {
  @Value("${username}")
  private String username;
...

当配置更改时,标有@RefreshScope的Bean将得到特殊处理来生效配置。

扩展问题

如果项目少配置少的情况可以通过/refresh来手动刷新配置,如果项目比较复杂的情况呢这种肯定是行不通的,Spring Cloud Bus消息总线可以解决配置修改的真正的动态刷新。

总结

以上所述是小编给大家介绍的Spring Cloud 动态刷新配置信息,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!

原文链接:https://segmentfault.com/a/1190000015349596