【SpringCloud-Feign】超时策略

springcloud openfeign默认使用Retryer.NEVER 不重试

解决方案
edu中配置ribbon的超时时间(因为OpenFeing的底层即是对ribbon的封装)

#超时配置
#值小了容易失败,值大了可能会导致服务雪崩
ribbon:
  ConnectTimeout: 10000 #连接建立的超时时长,默认1秒
  ReadTimeout: 10000 #处理请求的超时时间,默认为1秒

重置机制:2.0.x之前feign远程访问如果失败,默认会重试若干次,如果有一次成功则返回成功;
带来的问题:
- 等待时间长
- 出现幂等性问题:相同的多次请求提交,后端处理的结果始终一致
解决:
A->B 同一个请求提交多次(防止表单重复提交)
B需要解决幂等性问题
A提交请求时携带一个唯一的字符串,B进行校验


以前的版本:openfeign默认使用 Retryer.DEFAULT 重试5次,会导致(幂等性失败的问题: 两端结果一致性,以后还会整合token解决)

ribbon:
  MaxAutoRetries: 0 # 同一实例最大重试次数,不包括首次调用,默认0
  MaxAutoRetriesNextServer: 1 # 重试其他实例的最大重试次数,不包括首次所选的server,默认1
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值