美文网首页Java成长之路
SpringCloud-Feign【超时。时间设置】

SpringCloud-Feign【超时。时间设置】

作者: 路人甲java | 来源:发表于2021-01-15 10:46 被阅读0次

    Feign调用服务的默认时长是1秒钟,也就是如果超过1秒没连接上或者超过1秒没响应,那么会相应的报错。而实际情况是因为业务的不同可能出现超出1秒的情况,这时我们需要调整超时时间。本文来看下怎么去设置。

    全局配置

    Feign 的负载均衡底层用的就是 Ribbon
      在application.properties中添加如下配置,超过5秒没连接上报连接超时,如果超过5秒没有响应,报请求超时

    #全局配置
    # 请求连接的超时时间 默认的时间为 1 秒
    ribbon.ConnectTimeout=5000
    # 请求处理的超时时间
    ribbon.ReadTimeout=5000
    
    

    效果演示

    在这里插入图片描述 在这里插入图片描述

    局部设置

    #局部配置
    # 对所有操作请求都进行重试
    ego-product-provider.ribbon.OkToRetryOnAllOperations=true
    # 对当前实例的重试次数
    ego-product-provider.ribbon.MaxAutoRetries=2
    # 切换实例的重试次数
    ego-product-providert.ribbon.MaxAutoRetriesNextServer=0
    # 请求连接的超时时间
    ego-product-provider.ribbon.ConnectTimeout=3000
    # 请求处理的超时时间
    ego-product-provider.ribbon.ReadTimeout=3000
    
    
    在这里插入图片描述

    访问请求后,查看provider的输出

    在这里插入图片描述

    通过输出我们看到请求重试了一次。然后报错

    在这里插入图片描述

    相关文章

      网友评论

        本文标题:SpringCloud-Feign【超时。时间设置】

        本文链接:https://www.haomeiwen.com/subject/eubiaktx.html