2015-12-22 124 views
3

我已經使用spring雲配置文檔爲客戶端以及服務器創建了演示。我使用git屬性文件進行外部配置。如果我在外部配置文件中做了任何更改並刷新客戶端,那麼它的工作正常。但我不想每次刷新。我想讓自己的客戶端能夠自動刷新。如何在春季雲配置中配置客戶端和服務器以使客戶端自動刷新

我經歷了春季文檔,我認爲我們可以通過以下方式來完成。

  1. 隨着Redis的
  2. 幫助春雲總線

哪一個是做正確的方式?

目前我正在嘗試第一個與https://github.com/spring-cloud-samples/configserver/但它沒有工作。

那麼任何一個請解釋我如何配置客戶端和服務器,以便我們不需要刷新客戶端?

我應該用春天的雲巴士搬家嗎?

回答

6

沒有「正確」的方法。要監視配置服務器中的更改,您需要spring-cloud-config-monitor(或可用於獨立應用程序)。它使用Spring Cloud Bus來廣播更改事件,但您必須選擇一個傳輸(因此Redis是一個有效的選擇)。

您還需要監聽客戶端上的更改,因此如果在服務器上使用不同的傳輸器,請添加spring-cloud-starter-bus-redis(或amqpkafka等)。

通過Spring雲巴士您聯繫當前要被掛接到監控變化和傳播他們的樣品在Redis的(這對依賴spring-cloud-config-monitorspring-cloud-starter-stream-redis開關):

<dependency> 
     <groupId>org.springframework.cloud</groupId> 
     <artifactId>spring-cloud-config-monitor</artifactId> 
    </dependency> 
    <dependency> 
     <groupId>org.springframework.cloud</groupId> 
     <artifactId>spring-cloud-starter-stream-redis</artifactId> 
    </dependency> 

爲了雖然收到從GitHub的通知,您需要在您的github存儲庫中註冊您的應用程序URL。該示例沒有URL,因此未註冊。如果您將其更改爲使用基於文件的存儲庫(例如,本地git倉庫),那麼它將監視這些文件並且不需要掛鉤。

相關問題