我有两个具有以下配置的Eureka服务器:
eureka.client.registerWithEureka = true
eureka.client.fetchRegistry = false
eureka.server.response-cache-update-interval-ms=500
eureka.server.eviction-interval-timer-in-ms=1000
eureka.server.renewal-threshold-update-interval-ms=300000
eureka.instance.prefer-ip-address=true
在我的环境中,它有一个Oauth2和一个Zuul服务器,它们都具有默认配置。我有3个具有波纹管配置的应用程序实例:
eureka.instance.preferIpAddress=true
eureka.instance.lease-expiration-duration-in-seconds=2
eureka.instance.lease-renewal-interval-in-seconds=1
eureka.client.registry-fetch-interval-seconds=2
在正常情况下,如果我的应用程序的3个实例都已启动,则“续订阈值”为146,“续订(最新)”为183。
但是当我杀死我的应用程序的第一个实例并等待很长时间时 “更新阈值”仍然是146,然后我杀死第二个实例并等待1h。 “更新阈值”仍然是146。但是“更新(最后一分钟)”现在是66。
现在我收到一条消息,“紧急情况!如果不是,EUREKA可能会提出不正确的索赔要求。续订的门槛要小得多,因此,不能仅仅出于安全性考虑就需要立即更新。 “,因为激活了自我保存模式。
但是我不明白为什么“更新阈值”不更新(可以根据实例减少)。它总是保持价值。
答案 0 :(得分:0)
这对我有用,将续约阈值设置为续约的60%
eureka:
renewalPercentThreshold: 0.60
server:
renewalPercentThreshold: 0.60