springcloud openFeign 请求超时问题解决

用feign调用微服务接口时,故意在微服务的接口睡眠一段时间。结果发现,只要睡眠时间超过1s,调用方就会报超时

java.net.SocketTimeoutException: Read timed out
        at java.net.SocketInputStream.socketRead0(Native Method) ~[na:1.8.0_65]
        at java.net.SocketInputStream.socketRead(SocketInputStream.java:116) ~[na:1.8.0_65]
......

后来查阅文档发现,feign的默认请求时间为1s,超过1s feign就报超时。这个可以通过配置修改掉

feign.hystrix.enabled=true
#feign调用默认是1000毫秒=1秒  这里改为5分钟
hystrix.command.default.execution.isolation.thread.timeoutInMilliseconds=300000
hystrix.command.default.circuitBreaker.sleepWindowInMilliseconds=300000
hystrix.command.default.circuitBreaker.forceClosed=true
#hystrix.command.default.execution.timeout.enabled=false
#请求处理的超时时间  add by six-vision
ribbon.ReadTimeout=300000
ribbon.SocketTimeout=300000
#请求连接的超时时间 add by six-vision
ribbon.ConnectTimeout: 30000
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容