Eureka的常用配置

1.心跳机制

        Eureka是通过心跳的方式实现对各个服务实例的健康检测的。在Eureka的服务续约与剔除机制下,客户端的健康状态从注册到注册中心开始都会处于UP状态,除非心跳中止一段时间后,服务注册中心将其剔除。心跳机制以有效检查客户端进程是否正常运作。

自定义心跳时间:

服务启动后,Eureka Client实例将会向Eureka Server发送周期性的心跳,

默认是每30发送一次,可通过修改Eureka Client实例的eureka.instance.

leaseRenwalIntervalInSeconds属性来改变发送周期性心跳的默认时间。

eureka:
  instance:
     leaseRenewalIntervalInSeconds: 5	#设置心跳时间为5秒

自定义Eureka Server刷新服务列表,将无效服务剔除的时间间隔:

Eureka Server如果在一定期限内没有接收到Eureka Client实例的心跳,那么会将该实例从注册中心剔除掉,其他客户端将无法访问这个实例。这个期限默认值为90。可以通过eureka.instance.leaseExpriationDurationInSeconds属性修改默认值,示例代码如下:

eureka:
  instance:
     leaseRenewalIntervalInSeconds: 5
     leaseExpirationDurationInSeconds: 10    #设置每隔10秒刷新服务列表,将无效服务剔除 	

2.自我保护机制

        Eureka的自我保护机制是为了防止误杀服务。如果Eureka Server注册中心发生故障,那么Eureka Client服务就有可能不能正常续约,虽然这时Eureka Client服务是正常的,但注册中心依然会将超过90秒未续约的服务剔除,造成误杀服务的情况。

Eureka Server如何判断是否开启自我保护?

        Eureka Server通过判断是否存在大量续约失败的服务,从而确定是否开启自我保护。默认情况下,Eureka Server配置的自我保护阀值是0.85,如果Eureka Server运行期间根据心跳比例接收到的服务续约低于阀值,则Eureka Server开启自我保护,不再剔除注册列表的信息。

如何关闭自我保护机制?

如果在Eureka Server保护期间,可能会发生服务下线的情况,此时Eureka Server维护的服务清单就不那么准确了,此时可以关闭保护保护机制,确保服务中心不可用的服务实例被及时剔除。

默认情况下,Eureka Server自我保护是开启的,如果需要关闭,则可以在配置文件中添加下代码:

eureka:
  server:
    enable-self-preservation: false

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值