http 默认超时时间_zuul 性能调优:网关的 2 层超时调优

超时调优图解

f19fec64b44b9c39f2a8bd9770128238.png

异常来源:在被调用product-provider服务中的ProductServiceImpl类,人为在findAll方法中增加线程睡眠2秒

try {
            Thread.sleep(2000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }

当出现访问页面出现 Hystrix Read time out 如下:

9a798711347da5ceebe8a994b6a71a57.png

解决方法:

网关项目服务:

(1)版本:

SpringBoot版本:<version>2.1.11.RELEASE</version>

SpringCloud版本:<spring-cloud.version>Greenwich.SR4</spring-cloud.version>

(2)pom文件坐标:

(spring-boot-web、eureka-client、zuul)

(3)启动类:

@SpringBootApplication
@EnableZuulProxy

(4)全局配置文件:

spring.application.name=zuul-gateway-timeout
server.port=9020

#设置服务注册中心地址,指向另一个注册中心
eureka.client.service-url.defaultZone=http://admin:123456@eureka1:8761/eureka/,http://admin:123456@eureka2:8761/eureka/

#第一层 hystrix 超时时间设置
#默认情况下是线程池隔离,超时时间 1000ms
hystrix.command.default.execution.isolation.thread.timeoutInMilliseconds=8000

#第二层 ribbon 超时时间设置:设置比第一层小
# 请求连接的超时时间: 默认 5s
ribbon.ConnectTimeout=5000
# 请求处理的超时时间: 默认 5s
ribbon.ReadTimeout=5000

(5)再次启动网关服务,最终调用product-provider服务数据正常显示。

但是,浏览器反应时长大概为2秒,原因是product-provider,加上2秒睡眠时长。

2073e02c4defe3e9b9895be3c4d7de89.png

注:这里关于《 服务网关 Zuul 》完

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值