zuul中关于ribbon和hystrix的一些配置问题

Zuul的负载均衡ribbon和熔断hystrix

在zuul的配置文件中配置

server:
  port: 10010
spring:
  application:
    name: zuul
eureka:
  client:
    service-url:
      defaultZone: http://127.0.0.1:10086/eureka
zuul:
  routes:
  user-service:
    path: /user/**
    serviceId: user-service
    strip-prefix: false
  ignored-services:
    - consumer-service
zuul:
  retryable: true
ribbon:
  ConnectTimeout: 250 # 连接超时时间(ms)
  ReadTimeout: 2000 # 通信超时时间(ms)
  OkToRetryOnAllOperations: true # 是否对所有操作重试
  MaxAutoRetriesNextServer: 2 # 同一服务不同实例的重试次数
  MaxAutoRetries: 1 # 同一实例的重试次数
hystrix:
  command:
  	default:
        execution:
          isolation:
            thread:
              timeoutInMillisecond: 6000 # 熔断超时时长:6000ms


由于ribbon一次访问失败后会自动重试一次,因此 ( ConnectTimeout + ReadTimeout ) × 2 < timeoutInMillisecond

即:

timeoutInMillisecond的真实值是: ( ConnectTimeout + ReadTimeout ) × 2

公式:

timeoutInMillisecond = ( ribbon ConnectTimeout + ribbon ReadTimeout ) * (maxAutoRetries + 1) * ( maxAutoRetriesNextServer + 1 );

展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 创作都市 设计师: CSDN官方博客
应支付0元
点击重新获取
扫码支付

支付成功即可阅读