摘要:自我保護機制官方對于自我保護機制的定義自我保護模式正是一種針對網(wǎng)絡(luò)異常波動的安全保護措施,使用自我保護模式能使集群更加的健壯穩(wěn)定的運行。注冊中心關(guān)閉自我保護機制,修改檢查失效服務(wù)的時間。
自我保護背景
首先對Eureka注冊中心需要了解的是Eureka各個節(jié)點都是平等的,沒有ZK中角色的概念, 即使N-1個節(jié)點掛掉也不會影響其他節(jié)點的正常運行。
默認(rèn)情況下,如果Eureka Server在一定時間內(nèi)(默認(rèn)90秒)沒有接收到某個微服務(wù)實例的心跳,Eureka Server將會移除該實例。但是當(dāng)網(wǎng)絡(luò)分區(qū)故障發(fā)生時,微服務(wù)與Eureka Server之間無法正常通信,而微服務(wù)本身是正常運行的,此時不應(yīng)該移除這個微服務(wù),所以引入了自我保護機制。
自我保護機制官方對于自我保護機制的定義:
https://github.com/Netflix/eu...
自我保護模式正是一種針對網(wǎng)絡(luò)異常波動的安全保護措施,使用自我保護模式能使Eureka集群更加的健壯、穩(wěn)定的運行。
自我保護機制的工作機制是如果在15分鐘內(nèi)超過85%的客戶端節(jié)點都沒有正常的心跳,那么Eureka就認(rèn)為客戶端與注冊中心出現(xiàn)了網(wǎng)絡(luò)故障,Eureka Server自動進入自我保護機制,此時會出現(xiàn)以下幾種情況:
1、Eureka Server不再從注冊列表中移除因為長時間沒收到心跳而應(yīng)該過期的服務(wù)。
2、Eureka Server仍然能夠接受新服務(wù)的注冊和查詢請求,但是不會被同步到其它節(jié)點上,保證當(dāng)前節(jié)點依然可用。
3、當(dāng)網(wǎng)絡(luò)穩(wěn)定時,當(dāng)前Eureka Server新的注冊信息會被同步到其它節(jié)點中。
因此Eureka Server可以很好的應(yīng)對因網(wǎng)絡(luò)故障導(dǎo)致部分節(jié)點失聯(lián)的情況,而不會像ZK那樣如果有一半不可用的情況會導(dǎo)致整個集群不可用而變成癱瘓。
自我保護開關(guān)Eureka自我保護機制,通過配置eureka.server.enable-self-preservation來true打開/false禁用自我保護機制,默認(rèn)打開狀態(tài),建議生產(chǎn)環(huán)境打開此配置。
開發(fā)環(huán)境配置開發(fā)環(huán)境中如果要實現(xiàn)服務(wù)失效能自動移除,只需要修改以下配置。
1、 注冊中心關(guān)閉自我保護機制,修改檢查失效服務(wù)的時間。eureka: server: enable-self-preservation: false eviction-interval-timer-in-ms: 30002、 微服務(wù)修改減短服務(wù)心跳的時間。
# 默認(rèn)90秒 lease-expiration-duration-in-seconds: 10 # 默認(rèn)30秒 lease-renewal-interval-in-seconds: 3
以上配置建議在生產(chǎn)環(huán)境使用默認(rèn)的時間配置。
推薦:Spring Boot & Cloud 最強技術(shù)教程
掃描關(guān)注我們的微信公眾號,干貨每天更新。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/71301.html
摘要:并不會在微服務(wù)框架中有其它的注冊機制。微服務(wù)框架本身不會維護服務(wù)組件的啟動順序,這一問題可以由來解決。啟動先后邏輯為被依賴的服務(wù)先啟動,只有當(dāng)前服務(wù)所依賴的服務(wù)全部正常啟動后,才會開始啟動流程。 概述 這篇文檔,著重解決一個問題:Spring Cloud 融合于 Rainbond 原生 Service Mesh 的正確姿勢是什么樣子的。 Rainbond 原生支持 Service Me...
摘要:該注冊中心關(guān)閉了自我保護機制,所以當(dāng)各位開發(fā)者的服務(wù)下線后,稍等片刻就會被剔除,所以大家不用擔(dān)心服務(wù)的長時間停留在該服務(wù)注冊中心上。 這是一篇博客福利! 相信很多關(guān)注Spring Cloud的愛好者們,不論是讀我的系列文章和書籍還是看其他朋友們寫的博客佳文,都不可避免的啟動多個項目來體驗Spring Cloud帶來的整套微服務(wù)架構(gòu)方案。其中,Eureka注冊中心幾乎是每個試驗都必須要啟...
摘要:服務(wù)續(xù)約在服務(wù)注冊完成之后,服務(wù)提供者需要維護一個心跳來告知注冊中心服務(wù)實例處于正常運行狀態(tài)中,防止注冊中心將正常的服務(wù)實例剔除出注冊中心。 Spring Cloud Eureka 目錄 前言 構(gòu)建服務(wù)注冊中心 服務(wù)注冊與發(fā)現(xiàn) Eureka的基礎(chǔ)架構(gòu) Eureka的服務(wù)治理機制 Eureka的配置 代碼地址 前言 服務(wù)治理 ?隨著微服務(wù)應(yīng)用的不斷增加,靜態(tài)配置會越來越難以維護,并且...
摘要:是一個相對比較新的微服務(wù)框架,年才推出的版本雖然時間最短但是相比等框架提供的全套的分布式系統(tǒng)解決方案。提供線程池不同的服務(wù)走不同的線程池,實現(xiàn)了不同服務(wù)調(diào)用的隔離,避免了服務(wù)器雪崩的問題。通過互相注冊的方式來進行消息同步和保證高可用。 Spring Cloud 是一個相對比較新的微服務(wù)框架,...
閱讀 3207·2023-04-25 16:50
閱讀 941·2021-11-25 09:43
閱讀 3566·2021-09-26 10:11
閱讀 2547·2019-08-26 13:28
閱讀 2558·2019-08-26 13:23
閱讀 2458·2019-08-26 11:53
閱讀 3601·2019-08-23 18:19
閱讀 3019·2019-08-23 16:27