1. 程式人生 > >跟我學Spring Cloud(Finchley版)-22-Spring Cloud Config-配置動態重新整理

跟我學Spring Cloud(Finchley版)-22-Spring Cloud Config-配置動態重新整理

浪費了“黃金五年”的Java程式設計師,還有救嗎? >>>   

先解釋下為什麼突然斷更半個月:

  • 正月初三 - 正月十二:父親肺氣腫住院;母親肺炎,也要掛水,故請假照顧。
  • 正月十四 - 正月二十:奶奶摔了一跤,突然離世…老家有守夜、辦喪的習俗,請假事喪。

總之,2019開局很不順利……Anyway,今天開工,今天恢復更新。

配置重新整理三要素

  • 依賴中有spring-boot-starter-actuator

  • 新增如下配置,暴露/actuator/refresh 端點:

    management:
      endpoints:
        web:
          exposure:
            include: refresh
    
  • 待重新整理的配置屬性所在的類上添加了@RefreshScope註解 ,例如:

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

這樣,修改profile 配置後,只需嚮應用的/actuator/refresh 端點發送POST請求,即可重新整理該屬性。例如:

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

自動重新整理、批量重新整理-Spring Cloud Bus

參考文件:http://www.itmuch.com/spring-cloud/spring-cloud-bus-auto-refresh-configuration/

引入Cloud Bus後,就會多一個/actuator/bus-refresh 端點

本文首發

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

乾貨分享