微服务openfeign配置重试机制
场景:
1、在实际开发中,通过feign调用其他服务,如果出现read-timeout超时、或调用出现异常
2、如上问题,有时候可能是网络速度、网路抖动等原因导致超时异常,并非程序本身错误,所以可以配置openfeign重试策略,从而增强调用的容错率
配置重试:
1、通用 openfeign 重试策略,配置示例
@Configuration
public class OpenFeignConfig {
/**
* <p> 通用 openfeign 重试策略,默认永不重试(Retryer.NEVER_RETRY) </p>
*/
@Bean
public Retryer retryer() {
// period:重试初始间隔时间(毫秒)
// maxPeriod:重试最大间隔时间(毫秒)
// maxAttempts:最大重试次数,此次数包括首次请求
return new Retryer.Default(1000, 3000, 3);
}
}