跟我学Spring Cloud(Finchley版)-22-Spring Cloud Config-配置动态刷新

先解释下为何忽然断更半个月:web

  • 正月初三 - 正月十二:父亲肺气肿住院;母亲肺炎,也要挂水,故请假照顾。
  • 正月十四 - 正月二十:奶奶摔了一跤,忽然离世…老家有守夜、办丧的习俗,请假事丧。

总之,2019开局很不顺利……Anyway,今天开工,今天恢复更新。spring

配置刷新三要素

  • 依赖中有spring-boot-starter-actuatorapp

  • 添加以下配置,暴露/actuator/refresh 端点:curl

    management:
      endpoints:
        web:
          exposure:
            include: refresh
  • 待刷新的配置属性所在的类上添加了@RefreshScope注解 ,例如:spring-boot

    @RestController
    @RefreshScope
    public class ConfigClientController {
      @Value("${profile}")
      private String profile;
    
      @GetMapping("/profile")
      public String hello() {
        return this.profile;
      }
    }

这样,修改profile 配置后,只需向应用的/actuator/refresh 端点发送POST请求,便可刷新该属性。例如:this

curl -X POST http://localhost:8081/actuator/refresh

自动刷新、批量刷新-Spring Cloud Bus

参考文档:http://www.itmuch.com/spring-cloud/spring-cloud-bus-auto-refresh-configuration/url

引入Cloud Bus后,就会多一个/actuator/bus-refresh 端点code

本文首发

http://www.itmuch.com/spring-cloud/finchley-22/文档

干货分享

全是干货!

相关文章
相关标签/搜索