MaxAutoRetriesNextServer: 1 retryableStatusCodes: 500,502,504 # retryableStatusCodes: 500,502,504,404 OkToRetryOnAllOperations: true

答案是feign的配置会覆盖掉ribbon的,具体还有一段有趣的故事,spring cloud gateway的作者貌似还不太清楚,有个路人给指出来了,还获得了gateway作者的称赞。

https://github.com/spring-cloud/spring-cloud-netflix/issues/696

SpringCloud Feign 支持请求和响应进行GZIP压缩来提高通信效率。 开启GZIP压缩 配置 feign .compression.request.enable=true #请求GZIP压缩 feign .compression.response.enable=true ... 关于 ribbon 组件的 Connect TimeOut Read TimeOut 功能失效问题处理 这几天在自学SpringCloud学到 Feign 的时候需要验证超时问题,使用 配置 ribbon . Connect TimeOut Read TimeOut 无效。 百度后说了一大堆,很多都是新写 配置 类乱七八糟的处理。 原先就能 配置 的东西为什么要用 配置 类去实现,然后我稍微换个思路寻找后发现下面这个 配置 可以使用。 为了防止有人不 点击复制,直接用Ctrl+C 有乱七八糟的其他内容,这边直接贴原文。 feign : client: 文章目录前言一、SpringCloud Feign ?SpringCloud Ribbon ?1、 Feign 介绍3. Ribbon 介绍2.默认 配置 4.参数 设置 二、坑点1 同时 配置 Feign Ribbon 的超时,已谁为准?三、坑点2 为什么 connect Timeout read Timeout 必须同时 配置 ?总结 本篇主要介绍SpringCloud Fegin结合 Ribbon 实现负载均衡的超时参数详解及 设置 Feign 自己有两个超时参数,它使用的负载均衡组件 Ribbon 本身还有相关 配置 。那 在Spring Cloud微服务架构 ,大部分公司都是利用Open Feign 进行服务间的调用,而比较简单的业务使用默认 配置 是不 有多大问题的,但是如果是业务比较复杂,服务要进行比较繁杂的业务计算,那后台很有可能 出现 Read Timeout 这个异常,因此定制化 配置 超时时间就有必要了。 1|0 Feign Client Configuration # 默认开启 feign .httpclient.enabled=false # 默认关闭 feign .okhttp.enabled=true # 默认关闭 1、 ribbon 的超时 配置 ribbon : OkToRetryOnAllOperations: false #对所有操作请求都进行重试,默认false,包括连接超时( connect Timeout )和请求超时( read TimeOut ) Read Timeout : 3000 #负载均衡超时时间,默认值5000 Connect Timeout : 2000 # ribbon 请求连接的超时时间,默认值2000 MaxAutoRetries: 0 #对当前实例的重试次数,默认0,不包含首次调用 Feign Ribbon 的重试机制相当于一个双层循环, feign 重试机制在外层, Ribbon 的重试机制在里层,每执行一次 feign 的重试机制,内层的 Ribbon 的重试机制都 全部执行一次。 最近在学习springcloud微服务,在使用open feign 时,需要使用 ribbon 组件的 Connect TimeOut Read TimeOut 功能,代码示下: @GetMapping(value = "/payment/ feign / timeOut ") public String payment TimeOut (){ //设定暂停3秒,open Feign 默认等待时间一秒 Time Unit.SECONDS.sleep(3 connect Timeout : 5000 read Timeout : 5000 # 实例 配置 feign Name即@ feign client 的value,也就是服务名 feign Name: connect Timeout : 5000 我们用到spring Cloud的时候, Feign Ribbon 和Hystrix都是必不可少的 配置 项。下面就来详细说下他们三者的关系及如何 配置 。本次演示采用:spring-cloud-starter-open feign :2.1.0RELEASE版本。