Spring Cloud Ribbon 中的请求重试

场景:

当消费者调用服务A,而服务A宕机或网络出现异常时,Ribbon会重新发送请求到服务B上完成请求。

重试实现:

  • 引入spring的重试组件

        在maven引入依赖

<dependency>
    <groupId>org.springframework.retry</groupId>
    <artifactId>spring-retry</artifactId>
</dependency>
  • 对ribbon进行重试配置
#配置ribbon请求重试   服务名 - ribbon - 参数
service-product:
    ribbon:    
        ConnectTimeout: 250 # Ribbon的连接超时时间
        ReadTimeout: 1000 # Ribbon的数据读取超时时间
        OkToRetryOnAllOperations: true # 是否对所有操作都进行重试
        MaxAutoRetriesNextServer: 1 # 切换实例的重试次数
        MaxAutoRetries: 1 # 对当前实例的重试次数

上一篇:Rabbitmq、Kafka 、Jmq总结


下一篇:python 错误重试