今天给大家分享的是 feign 的超时与重试配置。
超时feign: client: config: default: connectTimeout: 1000 readTimeout: 1000
需要注意以下几点:
1、连接超时 (connectTimeout) 和 读取超时 (readTimeout) 同时配置时,才会生效。
2、超时单位为毫秒。
3、可根据服务名称单独定义超时。
比如, provider-get 服务提供的是查询接口,超时时间可以设置短一些:
feign: client: config: provider-get: connectTimeout: 1000 readTimeout: 6000
而, provider-post 服务提供的是数据处理接口,超时时间可以设置长一些:
feign: client: config: provider-post: connectTimeout: 1000 readTimeout: 20000重试
实现 feign.Retryer 接口
public class MyRetryer implements Retryer { @Override public void continueOrPropagate(RetryableException e) { throw e; } @Override public Retryer clone() { return new Default(100, TimeUnit.SECONDS.toMillis(1), 5); } }
三个参数的理解:
period:周期,重试间隔时间maxPeriod:最大周期,重试间隔时间按照一定的规则逐渐增大,但不能超过最大周期maxAttempts:最大尝试次数,重试次数
之后,我们可以进行配置:
feign: client: config: default: retryer: com.fengwenyi.springclouddemo.demospringcloudfeignsentinel.consumerservice.MyRetryer
希望今天的分享能够在工作中帮助到你。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)