以下是利用 Spring Cloud Config + Bus 實現配置動態刷新的完整步驟和原理說明:
一、核心原理
- 消息總線機制
Bus 通過消息代理(如 RabbitMQ/Kafka)建立公共 Topic(默認springCloudBus
),當配置變更時,任一服務觸發刷新請求,消息會廣播至所有監聽該 Topic 的服務實例,實現批量自動刷新。 - 與 Config 集成
Config Server 或 Client 接收刷新請求后,通過 Bus 將事件推送至消息隊列,其他服務消費事件并重新拉取最新配置。
二、實現步驟
1. 環境準備
- 安裝 RabbitMQ:確保消息代理服務已啟動。
- 創建 Config Server:托管配置的 Git 倉庫,并暴露
/actuator/bus-refresh
端點。
2. 服務端配置(Config Server)
- 依賴引入:
<dependency><groupId>org.springframework.cloud</groupId><artifactId