手動刷新客戶端配置內容(Spring Cloud Config)


手動刷新客戶端配置內容

客戶端項目增加依賴項

<dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

客戶端項目修改配置文件

增加management.endpoints.web.exposure.include=refresh,health,info

spring.application.name=spring-cloud-config-client
server.port=9006
spring.cloud.consul.host=127.0.0.1
spring.cloud.consul.port=8500
#設置不需要注冊到 consul 中
spring.cloud.consul.discovery.register=false
#顯示的暴露接入點
management.endpoints.web.exposure.include=refresh,health,info

客戶端程序增加支持刷新注解

在使用配置中心的類上添加@RefreshScope注解:

@RestController
//刷新觸發地址/actuator/refresh
@RefreshScope
public class ConfigTestController {

	//配置信息通過@Value注解讀取,配置項用${配置項}讀取
	@Value("${bluersw.config}")
	private String configBluersw;

	@RequestMapping("/ConfigTest")
	public String ConfigTest(){
		return this.configBluersw;
	}
}

測試刷新效果

將Git倉庫里的配置內容改外Test-5(bluersw.config=Test-5),啟動客戶端程序(spring-cloud-config-client),刷新客戶端頁面127.0.0.1:9006/ConfigTest,發現顯示內容還是Test-3,然后執行:

curl -X POST http://127.0.0.1:9006/actuat/refresh

再次刷新頁面127.0.0.1:9006/ConfigTest,頁面內容顯示為Test-5,說明客戶端程序內的配置信息讀取了最新的值。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM