1. 程式人生 > >Spring Cloud學習筆記-003

Spring Cloud學習筆記-003

開發 spring pre 學習筆記 bubuko lse 參數 穩定 觸發

Spring Cloud學習筆記-003

  • 服務提供者:向註冊中心註冊服務

1. 新建maven工程,骨架選擇quickstart,工程名稱:demo-member

2. 加入相關依賴:

技術分享圖片

3. 編寫服務接口:

技術分享圖片

4. 在src\main\resources目錄下新建application.yml文件:

技術分享圖片

5. 編寫啟動類:

技術分享圖片

6. 啟動項目,並訪問eureka主頁查看效果(註:要先啟動eureka註冊中心):

技術分享圖片

7. 有時候啟動Eureka後會看到這樣的紅色警告信息:

技術分享圖片

  這個警告是觸發了Eureka Server的自我保護機制。當服務註冊到Eureka Server之後,會維護一個心跳連接,告訴Eureka Server自己還活著。Eureka Server在運行期間,會統計心跳失敗的比例在15分鐘之內是否低於85%,如果出現低於的情況(在單機調試的時候很容易滿足,實際在生產環境上通常是由於網絡不穩定導致),Eureka Server會將當前的實例註冊信息保護起來,讓這些實例不會過期,盡可能保護這些註冊信息。但是,在這段保護器件內實例若出現問題,那麽客戶端(服務提供者或服務消費者)很容易拿到實際已經不存在的服務實例,會出現調用失敗的情況,所以客戶端必須要有容錯機制

,比如可以使用請求重試,斷路器等機制。

  由於本地調試很容易觸發註冊中心的保護機制,這會使得註冊中心維護的服務實例不那麽準確。所以,我們在本地進行開發的時候,可以使用eureka.server.enalbe-self-preservation=false參數來關閉保護機制,以確保註冊中心可以將不可用的實例正確剔除。

Spring Cloud學習筆記-003