【问题标题】:What is default hystrix timeout?什么是默认的 hystrix 超时?
【发布时间】:2019-12-04 12:31:07
【问题描述】:

我知道这听起来很奇怪,但我找不到答案!

如果没有提供任何设置,hystrix调用默认会设置什么超时时间?

所有关于这个的问题都只是有些东西不起作用,等等。

【问题讨论】:

    标签: java spring-boot hystrix


    【解决方案1】:

    Hystrix 内置了以下默认值:

    对外部系统的每个请求的超时时间(默认值:1000 毫秒)

    参考:

    https://ahus1.github.io/hystrix-examples/manual.html
    

    【讨论】:

      【解决方案2】:

      如果您询问HystrixCommand 的超时设置,请查看source code,那里还有许多其他有趣的默认设置。默认执行超时时间为 1 秒

      private static final Integer default_executionTimeoutInMilliseconds = 1000; // default => executionTimeoutInMilliseconds: 1000 = 1 second
      

      【讨论】:

      • 如果socketimeout小于800ms会怎样?它会达到 hystrix 超时吗?谢谢
      • 您的意思是命令执行期间的套接字超时?如果整个命令在 1 秒内完成 - 那么它将被视为成功而不影响断路器。
      【解决方案3】:

      hystrix 的默认超时时间是 1 秒,您可以使用以下方法进行更改:

      #change default timeout to 10 seconds
      ribbon.ReadTimeout=10000 
      

      【讨论】:

        猜你喜欢
        • 2018-12-21
        • 2017-01-13
        • 2015-06-21
        • 2018-09-01
        • 2016-04-16
        • 2010-10-26
        • 2020-10-16
        • 1970-01-01
        相关资源
        最近更新 更多