如何解决Eureka Server不剔除已关停的节点的问题?

Posted Titter_Z

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何解决Eureka Server不剔除已关停的节点的问题?相关的知识,希望对你有一定的参考价值。

转: http://blog.csdn.net/rickiyeat/article/details/71041648

背景:由于Eureka拥有自我保护机制,当其注册表里服务因为网络或其他原因出现故障而关停时,Eureka不会剔除服务注册,而是等待其修复。这是AP的一种实现。 
为了让其有精准的 CP健康检查,可以采取让其剔除不健康节点。

server端:
eureka.server.enable-self-preservation//(设为false,关闭自我保护主要)
eureka.server.eviction-interval-timer-in-ms//清理间隔(单位毫秒,默认是60*1000)
client端:
eureka.client.healthcheck.enabled = true//开启健康检查(需要spring-boot-starter-actuator依赖)
eureka.instance.lease-renewal-interval-in-seconds =10//租期更新时间间隔(默认30秒)
eureka.instance.lease-expiration-duration-in-seconds =30//租期到期时间(默认90秒)

示例:

server端配置:
eureka:
    server:
        enableSelfPreservation: false
        evictionIntervalTimerInMs: 4000
client配置:
eureka:
    instance:
        leaseRenewalIntervalInSeconds: 10
        leaseExpirationDurationInSeconds: 30

注意:更改Eureka更新频率将打破服务器的自我保护功能

以上是关于如何解决Eureka Server不剔除已关停的节点的问题?的主要内容,如果未能解决你的问题,请参考以下文章

Eureka如何剔除已经宕机的节点

Eureka 开发时快速剔除失效服务

转载:Eureka 开发时快速剔除失效服务

Eureka篇三Eureka常用配置说明

通过Eureka自带REST API强行剔除失效服务

26 eureka问题汇总