在cloud整合zuul时出现的timeout超时问题:
只需要在yml 中配置zuul 连接超时,socket超时以及断溶超时即可,
但需要注意的是,当hystrix的值小的时候,hystrix生效,当ribbon.ReadTimeout小的时候,ribbon生效
注意 boot2.0版本以上或者Finchley版本以上 ,超时策略就成了ConnectTimeout+ReadTimeout*2> ribbon.ReadTimeout
注意:zuul :host 只有zuul路由是url是才生效,如果使用的是serviceId,请使用(ribbon.ReadTimeout ribbon.SocketTimeout 这两个)
hystrix:
command:
default:
execution:
timeout: #配置命令的执行,是否会超时
enabled: true
isolation: #命令的执行超时时间 超时将执行回退
thread:
timeoutInMilliseconds: 20000
ribbon:
ReadTimeout: 20000 #读取超时时间
ConnectTimeout: 10000 #好像这个没什么用 如果说有人知道这个是什么作用可以评论告诉我一下
properties
hystrix.command.default.execution.isolation.thread.timeoutInMilliseconds=60000
ribbon.ReadTimeout
ribbon.SocketTimeout
本文介绍了解决Zuul路由网关中出现的连接超时、读取超时及断路器超时等问题的方法。通过配置Hystrix和Ribbon的超时时间来优化服务响应,并详细说明了不同版本下超时策略的区别。
924





