【问题标题】:Zuul proxy with eureka returning 504 Timeout带有尤里卡的 Zuul 代理返回 504 超时
【发布时间】:2020-11-11 06:32:48
【问题描述】:

我有这样的场景,我有一个 Eureka 服务器、一个 Zuul 代理和 eureka 的客户端(一些 API)。

问题是,当我调用 Zuul 服务器时,它确实发现了 Eureka 上的“服务”,但它返回了 504 状态超时。

{
   "timestamp":"2020-07-21T18:38:46.408+00:00",
   "status":504,
   "error":"Gateway Timeout",
   "message":""
}

在我的 application.properties 我有:

spring.application.name=zuul-server

eureka.instance.preferIpAddress=true
eureka.client.registerWithEureka=true
eureka.client.fetchRegistry=true
eureka.client.healthcheck.enabled=true

zuul.ignored-services=*
zuul.host.time-to-live=-1
zuul.host.connect-timeout-millis=15000
zuul.host.max-per-route-connections=10000
zuul.host.max-total-connections=5000
zuul.host.socket-timeout-millis=60000
zuul.semaphore.max-semaphores=500

我不知道是什么问题导致了这个超时。

任何帮助提示?

【问题讨论】:

    标签: spring-boot netflix-eureka netflix-zuul


    【解决方案1】:

    对于那些最终面临同样问题的人来说,这就是我的解决方法。

    这就是我在 Zuul 项目中的最终 application.properties 设置和工作方式:

    spring.application.name=zuul-server
    
    eureka.instance.preferIpAddress=true
    eureka.client.registerWithEureka=true
    eureka.client.fetchRegistry=true
    eureka.client.healthcheck.enabled=true
    
    #zuul.ignored-services=*
    #zuul.host.time-to-live=-1
    zuul.host.connect-timeout-millis=60000
    zuul.host.max-per-route-connections=10000
    zuul.host.max-total-connections=5000
    zuul.host.socket-timeout-millis=60000
    zuul.semaphore.max-semaphores=500
    zuul.ribbon.eager-load.enabled= true
    
    hystrix.command.default.execution.isolation.strategy=THREAD
    hystrix.command.default.execution.isolation.thread.timeoutInMilliseconds=40000
    
    ribbon.ConnectTimeout=10000
    ribbon.ReadTimeout: 10000
    

    如果您的 IDE 抱怨“未知属性”,请忽略它。

    【讨论】:

      猜你喜欢
      • 2019-05-24
      • 2016-08-02
      • 2021-10-28
      • 1970-01-01
      • 2015-02-18
      • 2019-02-20
      • 2018-05-19
      • 2017-03-26
      • 2016-07-06
      相关资源
      最近更新 更多