【问题标题】:What if Eureka server is down如果 Eureka 服务器宕机了怎么办
【发布时间】:2018-05-15 06:00:09
【问题描述】:

我想知道,当eureka server宕机时,如何处理从eureka客户端到eureka server的重试次数?即当eureka服务器关闭时如何阻止eureka客户端向eureka服务器发送心跳。

【问题讨论】:

  • 为什么要停止发送心跳?继续发送心跳直到服务器再次恢复有什么问题?
  • @YannicKlem 以便客户端不会每 30 秒填写一次日志。我的尤里卡客户端是一个可部署的战争,我不希望每 30 秒就填满一次日志。
  • 那么你真正的问题是如何防止尤里卡客户端记录这个错误?
  • 你也可以这么说。我已经尝试了很多东西,但到目前为止没有任何效果。我希望尤里卡客户端在停止尝试连接到尤里卡服务器之前至少记录几次此错误。
  • @Divyanshi,你能找到解决方案吗?我也很期待。

标签: java spring-boot spring-cloud netflix-eureka


【解决方案1】:

如果您正在寻找使用 Netflix OSS 套件的解决方案,请使用 Hystrix 。或者,您可以根据重试添加自定义断路器。

【讨论】:

  • 我是 Netflix OSS 的新手,如果客户端不发送心跳,hystrix 不是用来断开 eureka 服务器和客户端之间的连接吗?在这里,客户端正在发送心跳,但由于 eureka 无法访问,因此无法进一步处理。你能给我提供在客户端实现断路器的任何实质性链接吗?
  • Hystrix 只是一个网络调用的包装器,它可以以任何一种方式工作。它没有区别,事实上 Eureka 并不知道 Hystrix 本身。如果您需要有关 Hystrix 的教程,请查看 baeldung.com/introduction-to-hystrixgithub.com/Netflix/Hystrix/tree/master/hystrix-examples
  • 你只需要用 Hystrix 封装你对 eureka Server 的调用,这样当服务器宕机时它就会断路,防止不必要的调用。
【解决方案2】:

您应该让eureka客户端继续发送心跳,以便在eureka服务器恢复后整个系统将恢复。

如果eureka客户端停止发送心跳,它如何知道服务器是否恢复?

【讨论】:

  • 在这种情况下,我想减少调用 Eureka 服务器的频率并抑制错误。有什么解决办法吗?
  • @Ankit 我能够通过在应用程序服务器设置中处理错误并为错误创建单独的日志来抑制错误。我还创建了一个备份 eureka 服务器,以防第一个服务器宕机。
猜你喜欢
  • 2013-02-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-05-29
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多