以下是我的方案: 我的微服務從中央conf服務器獲取有關其配置更改的通知。它可以是部分更新,也可以是完整的。 我在相關的bean上使用@RefreshScope標記。問題是如何更新標記的bean,我的意思是重新加載它們。 只是爲了澄清:從Spring雲中我只使用RefreshScope。更新標記爲RefreshScope的豆類
任何想法?
以下是我的方案: 我的微服務從中央conf服務器獲取有關其配置更改的通知。它可以是部分更新,也可以是完整的。 我在相關的bean上使用@RefreshScope標記。問題是如何更新標記的bean,我的意思是重新加載它們。 只是爲了澄清:從Spring雲中我只使用RefreshScope。更新標記爲RefreshScope的豆類
任何想法?
org.springframework.boot:spring-boot-starter-actuator
。refresh
端點刷新配置。例如,您可以像下面那樣配置管理端點。 curl -X POST http://localhost:8001/manage/refresh
將觸發刷新更改的配置。
management: context-path: /manage port: 8001 security.enabled: false
如果您有被變化的影響不同的組件,然後這是很好的保持你的資料庫配置,然後你可以添加清涼的背景下發布 - 訂閱模式中,所有受影響的組件是作爲配置更改的結果,訂閱由您的存儲庫發佈的事件。
而對於清爽情況下,我們有兩種選擇:由POST請求您的應用程序的
在這兩個解決方案中,通過@RefreshScope標記感興趣的bean。
謝謝。但它不能解決我的問題。它會刷新,如果我的配置在「存儲庫」,但我的情況是不同的,因爲我的應用程序獲取更改的參數,從現在開始它應該更新它們在所有相關的地方。可能是我應該先更新env,然後再打電話刷新? – Oleg