mil*_*184 3 java spring-boot netflix-eureka
我需要一些帮助来理解为什么在 Eureka 中注册的服务尽管没有实际运行,但仍希望相互通信。例如,我在 Eureka 注册了服务 A 和服务 B。如果我关闭服务 B,服务 A 仍会尝试与服务 B 通信 30 秒到 3 分钟,即使它没有运行。这样做的目的是什么?有什么办法可以解决吗?谢谢!
如您所知,Netflix 正在运行大量基于 Eureka 的服务器实例。因此,通过 Eureka 查找实例的开销对于 Netflix 来说可能是很大的开销。我想这就是为什么 Eureka 有缓存、轮询间隔和其他导致刷新实例状态延迟的功能的原因。
幸运的是,您可以使用以下属性调整此延迟。
尤里卡服务器-eureka.server.responseCacheUpdateInvervalMs
Eureka 客户端(API 调用者) -eureka.client.registryFetchIntervalSeconds
Eureka 客户端(API 提供者) eureka.instance.leaseExpirationDurationInSeconds
如果您运行的实例数量不是很大,您通常可以减少上述属性。
还有另一个与此延迟相关的属性。
eureka.instance.leaseRenewalIntervalInSeconds
该属性设置 Eureka 客户端的心跳间隔。它的默认值是 30 秒,但你不能调整这个值,因为 Eureka 服务器有一些硬编码逻辑,假设这个时间段是 30 秒。
归档时间: |
|
查看次数: |
3535 次 |
最近记录: |