Eureka 題

1、服務保護模式

默認:客戶端每30s給Eureka Server發送一次心跳,如果超過90s沒收到心跳,Eureka Server會在服務列表中刪除該節點

如果Eureka Server心跳統計在15分鐘內,失敗率超過了25%,如果超過,則會認為此時發生了網絡故障,不會刪除丟失心跳的節點

Eureka還有客戶端緩存功能,如果Server都宕機了,任然能通過client端緩存的列表跟應用服務通信。客戶端負載均衡策略會自動剔除死掉的節點

# 關閉自我保護:true為開啟自我保護,false為關閉自我保護
eureka.server.enableSelfPreservation=false

2、優雅停服

停服時,會觸發Eureka的服務保護模式,導致服務停掉了,eureka任然緩存著。
所以一般會關掉自我保護模式,而關掉又會導致網絡問題導致的丟失心跳,eureka會下線服務,而實際服務是任然運行可以提供服務的。

建議服務保護模式開啟。

服務下線可以使用優雅停服,spring-boot-starter-actuator ,提供了一個endpoint調用,可以用來通知eureka停服下掉節點,不觸發保護模式。

# 啟用shutdown,優雅停服功能
endpoints.shutdown.enabled=true
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容