Eureka 开发时快速剔除失效服务
服务端配置:
# 关闭保护机制
eureka.server.enable-self-preservation=false
#剔除失效服务间隔(默认60s=60000ms)
eureka.server.eviction-interval-timer-in-ms=2000
客户端配置
#Eureka客户端向服务端发送心跳的时间间隔,默认30s,单位为秒(客户端告诉服务端自己会按照该规则)
eureka.instance.lease-renewal-interval-in-seconds =5
#Eureka服务端在收到最后一次心跳之后等待的时间上限,默认90s,单位为秒,超过则剔除(客户端告诉服务端按照此规则等待自己)
eureka.instance.lease-expiration-duration-in-seconds =10
看看他们的默认值:
注意:eureka.instance.lease-expiration-duration-in-seconds 必须大于eureka.instance.lease-renewal-interval-in-seconds
即心跳失效时间必须大于心跳发送时间。否则eureka注册中心会出现剔除与注册重复执行得操作,即刷新eureka注
册中心,一会有该实例,一会没有该实例。
服务端60秒的剔除间隔:
客户端30秒心跳,90秒失效:
以上加起来是150s,也就是说正常默认情况下,会有150s左右的剔除延迟
这是翻译另一位博主的,我感觉他的有点小错误,在心跳续约和失效剔除那里。