基于 2021.0.1版本 具体有以下几种超时参数设置
以下仅限2021.0.1 以前的版本,高于该版本的spring cloud 已修复该问题
1、默认的超时时间
默认不生效
连接超时时间10秒、读超时时间60秒,源码在feign.Request.Options#Options()这个方法中
2、openFeign集成了Ribbon
Ribbon的默认超时连接时间、读超时时间都是是1秒, 默认生效
源码在org.springframework.cloud.openfeign.ribbon.FeignLoadBalancer#execute()方法中
3、设置Ribbon的超时时间(不推荐)
ribbon:
# 值的是建立链接所用的时间,适用于网络状况正常的情况下, 两端链接所用的时间
ReadTimeout: 5000
# 指的是建立链接后从服务器读取可用资源所用的时间
ConectTimeout: 5000
4、设置openFeign的超时时间(推荐)
以下设置为全局超时时间设置
feign:
client:
config:
## default 设置的全局超时时间,指定服务名称可以设置单个服务的超时时间
default:
connectTimeout: 5000
readTimeout: 5000
5、指定具体服务超时设置
可以对具体的服务名,单独设置超时时间
feign:
client:
config:
## default 设置的全局超时时间,指定服务名称可以设置单个服务的超时时间
default:
connectTimeout: 5000
readTimeout: 5000
## 为serviceC这个服务单独配置超时时间
serviceC:
connectTimeout: 30000
readTimeout: 30000