首页 > 其他 > 详细

Ribbon重试

时间:2020-03-27 17:34:15      阅读:55      评论:0      收藏:0      [点我收藏+]

由于Eureka的剔除延迟,导致一个服务挂了以后(未从列表剔除期间),访问到这台宕机服务器的请求就会报错,而此时明明有可以提供相同服务的其他服务器在正常运行,这不是我们想看到的。

第一步:引入依赖

  

第二步:在服务消费方添加配置(yaml文件中的元素不能重复,举例:如果文件中已经配置了spring:开头的配置,开启重试功能的配置请添加到该配置下否则项目无法启动)

spring:
cloud:
loadbalancer:
retry:
enabled: true # 开启Spring Cloud的重试功能


user-service:
ribbon:
ConnectTimeout: 250 # 毫秒 Ribbon的连接超时时间
ReadTimeout: 1000 # 毫秒 Ribbon的数据读取超时时间
OkToRetryOnAllOperations: true # 是否对所有操作都进行重试
MaxAutoRetriesNextServer: 1 # 切换实例的重试次数
MaxAutoRetries: 1 # 对当前实例的重试次数

这样当访问到宕机且没来得及剔除的服务,就会去尝试切换服务实例,重试次数取决于MaxAutoRetriesNextServer。尝试指定次数后还是找不到能正常响应的服务实例才会报错。

参考:https://www.jianshu.com/p/d0c07a072773

Ribbon重试

原文:https://www.cnblogs.com/zou-rong/p/12582709.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!