Eureka Communication Protocol

整理之前的筆記,發現有一些內容沒有發出來,陸續發出來。。。

Eureka Server & Eureka Server(Peer)

Eureka Client & Eureka Server

Register:服務註冊

當Eureka客戶端向Eureka Server註冊時,它提供自身的元數據,比如IP地址、端口,運行狀況指示符URL,主頁等。

Renew:服務續約

Eureka客戶會每隔30秒發送一次心跳來續約。 通過續約來告知Eureka Server該Eureka客戶仍然存在,沒有出現問題。 正常情況下,如果Eureka Server在90秒沒有收到Eureka客戶的續約,它會將實例從其註冊表中刪除。 建議不要更改續約間隔。

Fetch Registries:獲取註冊列表信息

Eureka客戶端從服務器獲取註冊表信息,並將其緩存在本地。客戶端會使用該信息查找其他服務,從而進行遠程調用。該註冊列表信息定期(每30秒鐘)更新一次。每次返回註冊列表信息可能與Eureka客戶端的緩存信息不同, Eureka客戶端自動處理。如果由於某種原因導致註冊列表信息不能及時匹配,Eureka客戶端則會重新獲取整個註冊表信息。 Eureka服務器緩存註冊列表信息,整個註冊表以及每個應用程序的信息進行了壓縮,壓縮內容和沒有壓縮的內容完全相同。Eureka客戶端和Eureka 服務器可以使用JSON / XML格式進行通訊。在默認的情況下Eureka客戶端使用壓縮JSON格式來獲取註冊列表的信息。

Cancel:服務下線

Eureka客戶端在程序關閉時向Eureka服務器發送取消請求。 發送請求後,該客戶端實例信息將從服務器的實例註冊表中刪除。該下線請求不會自動完成,它需要調用以下內容:
DiscoveryManager.getInstance().shutdownComponent();

Eviction 服務剔除

在默認的情況下,當Eureka客戶端連續90秒沒有向Eureka服務器發送服務續約,即心跳,Eureka服務器會將該服務實例從服務註冊列表刪除,即服務剔除。

參考:
Understanding Eureka Peer to Peer Communication
Understanding eureka client server communication
深入理解Eureka
Spring Cloud Netflix - Eureka Server源碼閱讀
spring cloud eureka
Eureka服務續約(Renew)源碼分析

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章