springboot2.x之hystrix配置

feign:
  hystrix:
    enabled: true
  client:
    config:
      default:
        connectTimeout: 7000
        readTimeout: 7000

hystrix:
  command:
    default:
      execution:
        isolation:
          thread:
            timeoutInMilliseconds: 8000

ribbon:
  MaxAutoRetries: 0 #最大重试次数,当Eureka中可以找到服务,但是服务连不上时将会重试
  MaxAutoRetriesNextServer: 0 #切换实例的重试次数
  OkToRetryOnAllOperations: false # true则表示对所有的操作请求都进行重试,如果是get则可以,如果是post,put等操作没有实现幂等的情况下是很危险的,false反之

上述配置缺一不可,当然也可以设置feign.hystrix.enabled为false,不推荐。

Hystrix与ribbon的默认请求超时时间都是1秒,一般hystrix的超时时间应大于ribbon(ribbon有重试,hystrix的重试默认关闭),否则报错。

如果不配置ribbon的重试次数,默认会重试一次,这里我为了简便,不考虑幂等性问题,配置成ribbion不重试 
注意: 
默认情况下,GET方式请求无论是连接异常还是读取异常,都会进行重试 
非GET方式请求,只有连接异常时,才会进行重试

参考链接:

https://blog.csdn.net/l848168/article/details/85090124

 

你可能感兴趣的:(编程技术)