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

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

1
2
3
4
5
6
7
8
#Server端
eureka.server.enable-self-preservation=false //(设为false,关闭自我保护主要)
eureka.server.eviction-interval-timer-in-ms=4000 //清理间隔(单位毫秒,默认是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秒)
1
2
3
4
5
6
7
8
9
10
#Server端配置
eureka:
server:
enableSelfPreservation: false
evictionIntervalTimerInMs: 4000
#Client配置
eureka:
instance:
leaseRenewalIntervalInSeconds: 10
leaseExpirationDurationInSeconds: 30

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

Powered by AppBlog.CN     浙ICP备14037229号

Copyright © 2012 - 2020 APP开发技术博客 All Rights Reserved.

访客数 : | 访问量 :