Spring Cloud:在退回之前重试失败的Feign客户端请求

时间:2017-11-08 06:27:53

标签: java spring netflix-feign spring-cloud-feign spring-retry

目前在阅读此article之后正在研究Feign和Spring Retry的集成,但不幸的是在我的application.yml文件中声明了以下内容

sample:
 ribbon:
  MaxAutoRetries: 2
  ReadTimeout: 2000
  OkToRetryOnAllOperations: true

失败的请求从未重试,但当我在question上尝试答案时。我创建了这个配置类

@Configuration
public class FeigConfig {

  @Bean
  public Retryer retryer() {
    return new Retryer.Default(1000L, 1000L, 3);
  }

  @Bean
  public Logger.Level feignLoggerLevel() {
    return Logger.Level.BASIC;
  }
}

它突然起作用了。现在我只想知道

1)为什么application.yml上的配置不起作用,或者在设置过程中出现了什么,但是当我创建配置类时,似乎没问题。

2)如果重试请求,是否可以在调用回退方法之前完成所有重试调用。

0 个答案:

没有答案