日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

eureka 自我保护机制

發布時間:2023/12/20 编程问答 50 豆豆
生活随笔 收集整理的這篇文章主要介紹了 eureka 自我保护机制 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1、自我保護模式開啟的條件是:1 分鐘后,若 Renews (last min) < Renews threshold,那么開啟自我保護機制。

Renews threshold表示:Eureka Server 期望每分鐘收到客戶端實例續約的閾值。
Renews(last min)表示:Eureka Server 最后 1 分鐘收到客戶端實例續約的總數。

Renews threshold = 服務實例總數 *(60/續約間隔)*自我保護續約百分比閾值因子(默認0.85)。

Renews(last min) = 服務實例總數 * (60/續約間隔)

2、自我保護關閉
適用于開發階段:假設某一個客戶端(微服務)宕機了,會及時被服務端剔除掉,不會長期保留這個已宕機服務實例,影響我們開發時判斷。

eureka server端
application.properties

#關閉自我保護 eureka.server.enable-self-preservation=false #超時3s自動清除 eureka.server.eviction-interval-timer-in-ms=3000

eureka client端
application.properties

#用來修改eureka server默認接受心跳的最大時間 默認是90s eureka.instance.lease-expiration-duration-in-seconds=10 #指定客戶端多久向eureka server發送一次心跳 默認是30s eureka.instance.lease-renewal-interval-in-seconds=5

?
編寫這兩個配置的作用:

首先,server關閉自我保護機制,但如果client不做配置的話,發現盡管client宕機了,過了很久一段時間還是沒有剔除client的注冊實例,我本人聽到的解釋是心跳是雙方面的,server單方面關閉自我保護機制還不管用,所以client端也要編寫配置和server端配合使用,eureka.instance.lease-expiration-duration-in-seconds=10把統計心跳的周期改為10秒,10秒統計一次心跳數,eureka.instance.lease-renewal-interval-in-seconds=5是5秒發一次心跳,所以一個周期(10秒)就可以發兩次心跳,那只要哪怕有一次發送心跳失敗,就是1/2=50% < 85%,就會剔除服務實例。

注意:這兩個配置一定要配合使用,如果不關閉自我保護機制,只是編寫client端配置的話,即使client端宕機了,也不會及時剔除服務實例。

總結

以上是生活随笔為你收集整理的eureka 自我保护机制的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。