Config Server refresh 端點
阿新 • • 發佈:2018-11-06
文章目錄
refresh
引入依賴
<!-- 內省 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId> </dependency>
開啟端點
### 端點控制
management:
endpoints:
web:
exposure:
# 開啟指定端點、所有端點
include: '*'
endpoint:
health:
# 總是表示詳細資訊的顯示
show-details: always
進階上一節的程式碼,無需更改,如果配置中心的配置檔案更改之後,只需訪問 refresh
介面即可:
bus-refresh
使用者更新配置資訊時,檢查到 Git Hook 變化,觸發 Hook 配置地址的呼叫,Config Server 接收到請求併發布訊息,Bus 將訊息傳送到 Config Client,當 Config Client 接收到訊息後會重新發送請求載入配置資訊,大體流程就是這樣。這裡使用的事 RabbitMQ 作為訊息中介軟體,自行安裝。
啟動 RabbitMQ
# 後臺啟動 RabbitMQ
$ rabbitmq-server -detached
Warning: PID file not written; -detached was passed.
檢視啟動結果,Web 管理頁面需要啟動外掛。
Config Server
引入依賴
<!-- Spring Cloud Bus Amqp --> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-bus-amqp</artifactId> </dependency>
配置
spring:
# RabbitMQ 配置
rabbitmq:
# 地址
host: localhost
# 埠
port: 5672
# 使用者名稱
username: admin
# 密碼
password: nS8KiyIu0Y7LGbvE
啟動 Config Server 之後檢視 RabbitMQ 管理介面,可以看到新增的佇列:
Config Client
引入依賴
<!-- Spring Cloud Bus Amqp -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-bus-amqp</artifactId>
</dependency>
配置
spring:
# RabbitMQ 配置
rabbitmq:
# 地址
host: localhost
# 埠
port: 5672
# 使用者名稱
username: admin
# 密碼
password: nS8KiyIu0Y7LGbvE
啟動 Config Client 之後檢視 RabbitMQ 管理介面,可以看到新增的佇列:
配置完畢,當配置中心的配置更愛之後,只需訪問 Config Server 的 /bus-refresh
介面即可重新整理配置:
原始碼:https://github.com/SlowSlicing/demo-spring-cloud-finchley/tree/ConfigServer入門