5,SpringCloud Eureka自我保護(hù)機(jī)制

自我保護(hù)背景

首先對Eureka注冊中心需要了解的是Eureka各個節(jié)點(diǎn)都是平等的,沒有ZK中角色的概念, 即使N-1個節(jié)點(diǎn)掛掉也不會影響其他節(jié)點(diǎn)的正常運(yùn)行。

默認(rèn)情況下,如果Eureka Server在一定時(shí)間內(nèi)(默認(rèn)90秒)沒有接收到某個微服務(wù)實(shí)例的心跳,Eureka Server將會移除該實(shí)例。但是當(dāng)網(wǎng)絡(luò)分區(qū)故障發(fā)生時(shí),微服務(wù)與Eureka Server之間無法正常通信,而微服務(wù)本身是正常運(yùn)行的,此時(shí)不應(yīng)該移除這個微服務(wù),所以引入了自我保護(hù)機(jī)制。

自我保護(hù)機(jī)制

官方對于自我保護(hù)機(jī)制的定義:

https://github.com/Netflix/eureka/wiki/Understanding-Eureka-Peer-to-Peer-Communication

自我保護(hù)模式正是一種針對網(wǎng)絡(luò)異常波動的安全保護(hù)措施,使用自我保護(hù)模式能使Eureka集群更加的健壯、穩(wěn)定的運(yùn)行。

自我保護(hù)機(jī)制的工作機(jī)制是如果在15分鐘內(nèi)超過85%的客戶端節(jié)點(diǎn)都沒有正常的心跳,那么Eureka就認(rèn)為客戶端與注冊中心出現(xiàn)了網(wǎng)絡(luò)故障,Eureka Server自動進(jìn)入自我保護(hù)機(jī)制,此時(shí)會出現(xiàn)以下幾種情況:

1、Eureka Server不再從注冊列表中移除因?yàn)殚L時(shí)間沒收到心跳而應(yīng)該過期的服務(wù)。

2、Eureka Server仍然能夠接受新服務(wù)的注冊和查詢請求,但是不會被同步到其它節(jié)點(diǎn)上,保證當(dāng)前節(jié)點(diǎn)依然可用。

3、當(dāng)網(wǎng)絡(luò)穩(wěn)定時(shí),當(dāng)前Eureka Server新的注冊信息會被同步到其它節(jié)點(diǎn)中。

因此Eureka Server可以很好的應(yīng)對因網(wǎng)絡(luò)故障導(dǎo)致部分節(jié)點(diǎn)失聯(lián)的情況,而不會像ZK那樣如果有一半不可用的情況會導(dǎo)致整個集群不可用而變成癱瘓。

自我保護(hù)開關(guān)

Eureka自我保護(hù)機(jī)制,通過配置?eureka.server.enable-self-preservation :true打開 / false 禁用 ?自我保護(hù)機(jī)制,默認(rèn)打開狀態(tài),建議生產(chǎn)環(huán)境打開此配置。

開發(fā)環(huán)境配置

開發(fā)環(huán)境中如果要實(shí)現(xiàn)服務(wù)失效能自動移除,只需要修改以下配置。

1、 注冊中心關(guān)閉自我保護(hù)機(jī)制,修改檢查失效服務(wù)的時(shí)間。

eureka: server:?

enable-self-preservation:?false

eviction-interval-timer-in-ms:?3000

2、 微服務(wù)修改減短服務(wù)心跳的時(shí)間。

# 默認(rèn)90秒 ?lease-expiration-duration-in-seconds: 10

# 默認(rèn)30秒 ?lease-renewal-interval-in-seconds: 3

以上配置建議在生產(chǎn)環(huán)境使用默認(rèn)的時(shí)間配置。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Demo 源碼下載 本案例為源碼分支的 eureka 分支 服務(wù)發(fā)現(xiàn)概述 服務(wù)發(fā)現(xiàn)機(jī)制是為了解決硬網(wǎng)絡(luò)編碼問題,服...
    聰明的奇瑞閱讀 5,247評論 0 13
  • 概述 著名的CAP理論指出,一個分布式系統(tǒng)不可能同時(shí)滿足C(一致性)、A(可用性)和P(分區(qū)容錯性)。由于分區(qū)容錯...
    PKAQ閱讀 3,919評論 0 13
  • 觀新賞物有話來,話道韋應(yīng)物詩中有新意。新韋應(yīng)物心中有新詩,新詩里頭有韋應(yīng)物。
    王密亮閱讀 174評論 0 0
  • [cp]路上遇到一個人, 你嘲笑她指甲蓋都是黑乎乎的; 嘲笑她皮膚黝黑,滿臉的斑斑點(diǎn)點(diǎn); 嘲笑她沒有頭發(fā),戴著假發(fā)...
    尼莫8468閱讀 189評論 0 0
  • 2050年,估計(jì)還得占一個老齡化百分比中一個小分子!人終歸是要老的,怎么老?是件有意思的事情,思量與不思量,擋不住...
    縱情嬉戲天地間閱讀 317評論 0 0

友情鏈接更多精彩內(nèi)容