預設情況下是不能及時擷取變更的配置檔案資訊
Spring Cloud分布式配置中心可以采用手動或者自動重新整理
1、手動需要人工調用接口 監控中心
2、消息總線實時通知 springbus
動态重新整理資料
在SpringCloud中有手動重新整理配置檔案和實時重新整理配置檔案兩種方式。
手動方式采用actuator端點重新整理資料
實時重新整理采用SpringCloud Bus消息總線
actuator端點重新整理資料
在config clientr引入
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
yml中開啟監控斷點
management:
endpoints:
web:
exposure:
include: "*"
同時在controller加 @RefreshScope
package com.toov5.controller;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.cloud.context.config.annotation.RefreshScope;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RefreshScope
public class TestController {
@Value("${motto}") //配置的key
private String motto;
@RequestMapping("/getMotto")
public String getMotto() {
return motto;
}
}
開啟: 修改git上的配置檔案資訊
必須要用post請求!
http://127.0.0.1:8882/actuator/refresh