springBoot下Netfix.Fegin的超时机制与并发配置

1.针对Fegin调用的熔断超时

@Configuration
public class FeignClientConfiguration extends BaseComponent implements FeignFormatterRegistrar {
    @Bean
    @Scope("prototype")
    public Feign.Builder feignBuilder() {
        ConfigurationManager.getConfigInstance().setProperty("hystrix.command.default.execution.isolation.thread.timeoutInMilliseconds", 12000);
        return HystrixFeign.builder().logLevel(Logger.Level.FULL);
    }
}

也可以在yml文件中处理

hystrix:
  command:
    default:
      execution:
        isolation:
          strategy: "SEMAPHORE"
          thread:
            timeoutInMilliseconds: 12000
        timeout:
          enabled: false

2.ribbon超时设置,一般在yml文件中配置

ribbon:
  ReadTimeout: 8000
  ConnectTimeout: 6000
这边在实际测试中,发现ribbon的超时时间一般是配置的时间的2倍
与针对fegin的设置超时时间,一般是谁小谁先抛出

2018年11月6日更新

在实际的项目

你可能感兴趣的:(springBoot下Netfix.Fegin的超时机制与并发配置)