Spring Eureka服务器显示续订量少于阈值

Spring Eureka服务器显示续订量少于阈值,第1张

Spring Eureka服务器显示续订量少于阈值

我遇到的问题与@prependent遇到的问题相同,我在Google上搜索了很多,并做了一些实验,在这里我来贡献一些关于Eureka服务器和实例如何工作的知识。

每个实例都需要以每30秒1次的频率将其租约续签到Eureka
Server,可以在中定义

eureka.instance.leaseRenewalIntervalInSeconds

更新(最后一分钟) :表示在最后一分钟从尤里卡实例收到的更新数

续订阈值 :Eureka服务器期望每分钟从Eureka实例收到的续订。

例如,如果

registerWithEureka
将if 设置为 false
eureka.instance.leaseRenewalIntervalInSeconds
则将其设置为30并运行2个Eureka实例。两个Eureka实例将每分钟向Eureka服务器发送
4个 续订,Eureka服务器的最小阈值为 1 (用代码编写),因此该阈值为 5
(此数字将乘以一个因子
eureka.server.renewalPercentThreshold
,稍后将进行讨论)。

自保存模式 :如果“ 续订”(最后一个分钟) 小于“ 续订”阈值 ,则将激活自保存模式。

因此在上例中,由于阈值为5,所以激活了SELF PRESERVATION MODE,但是Eureka服务器每分钟只能接收4次更新。

  1. 问题1:

“自我保护模式”旨在避免不良的网络连接失败。Eureka实例A和B之间的连通性很好,但由于连接故障,B在短时间内无法将其租约续订到Eureka服务器,此时Eureka服务器不能简单地将实例B踢出去。尽管B可用,但A不会从Eureka服务器获得可用的注册服务。因此,这是自保存模式的目的,最好将其打开。

  1. 问题2:

最小阈值1写入代码中。

registerWithEureka
设置为false,因此将没有Eureka实例寄存器,阈值为1。

在生产环境中,通常我们部署两个Eureka服务器,

registerWithEureka
并将其设置为true。因此,阈值将为2,并且Eureka服务器将每分钟两次向其自身续订租约,因此
RENEWALSARE LESSER THAN THRESHOLD
不会有问题。

  1. 问题3:

是的,你是对的。

eureka.instance.leaseRenewalIntervalInSeconds
定义每分钟发送给服务器的续订数量,但它将乘以上述系数
eureka.server.renewalPercentThreshold
,默认值为0.85。

  1. 问题4:

是的,这很正常,因为阈值初始值设置为1。因此,如果

registerWithEureka
将其设置为false,则续订始终低于阈值。

我对此有两个建议:

  1. 部署两个Eureka服务器并启用
    registerWithEureka
  2. 如果只想在演示/开发环境中进行部署,则可以将其设置
    eureka.server.renewalPercentThreshold
    为0.49,因此,当单独启动Eureka服务器时,阈值将为0。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5052212.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-11-15
下一篇2022-11-15

发表评论

登录后才能评论

评论列表(0条)

    保存