使用zuul、eureka、feign时如何减少延迟

How to reduce delays when using zuul, eureka, feign

当 API 服务最初重新启动时。如果我直接调用 API 服务,它会工作,但如果我通过 feign 客户端调用它,我会在几秒钟内看到 hystrix 回退消息。如果 API 服务不是 运行 当我通过 zuul 调用它时,我将看到以下错误消息:

com.netflix.zuul.exception.ZuulException: Hystrix Readed time out

我该如何解决这个问题?

默认情况下,Zuul 在上游服务不可用时抛出异常,而不是抛出 503/404。您需要扩展 ErrorFilter 并使用自定义行为处理异常。

这就是为什么当 API 服务不是 运行 时,您会得到 ZuulException

此行为已在 Zuul swallows 503 exceptions from upstream microservices GitHub 线程中进行了详细讨论。

在这个 SO 线程中解释了一些处理此异常的方法: