美文网首页
spring zuul超时设置

spring zuul超时设置

作者: DimonHo | 来源:发表于2018-05-18 11:55 被阅读984次

通过zuul路由到某个微服务,请求成功,但是响应却总是报500错误,经过调试发现只有在后台处理超过1s的请求会这样,感觉应该是响应超时的问题,但是无论我将zuul.host.socket-timeout-millis或zuul.host.connect-timeout-millis设置多大,问题依然存在。

server:
  port: 8080
  servlet:
    context-path: /
eureka:
  client:
    service-url:
      defaultZone:   http://localhost:8761/eureka/
  instance:
    status-page-url: http://localhost:8080/swagger-ui.html
zuul:
  ignoredServices: '*'
  ignoredPatterns: /**/admin/**
  host:
    max-per-route-connections: 60000
    socket-timeout-millis: 60000
    connect-timeout-millis: 60000
  routes:
    docdelivery:
      path: /doc-delivery/**
      serviceId: doc-delivery
    configserver:
      path: /config-server/**
      serviceId: config-server

查看官网 http://cloud.spring.io/spring-cloud-netflix/single/spring-cloud-netflix.html#_zuul_timeouts 后发现,对于通过serviceId路由的服务,设置zuul.host是没用的,你需要设置另外两个参数:ribbon.ReadTimeout 和ribbon.SocketTimeout。
在application.yml中添加如下配置:

ribbon:
  ReadTimeout: 60000  # 单位毫秒数
  SocketTimeout: 60000

问题得到解决。

相关文章

网友评论

      本文标题:spring zuul超时设置

      本文链接:https://www.haomeiwen.com/subject/osfgdftx.html