spring - 如何使用zuul避免zuul中的超时异常
问题描述
我有没有尤里卡服务发现的 zuul 网关服务器。
我使用如下所示的 yml 文件连接微服务和 zuul。
当我执行 URL 超时异常发生
ava.net.SocketTimeoutException:在 java.net.SocketInputStream.socketRead0(本机方法)~[na:1.8.0_91] 在 java.net.SocketInputStream.socketRead(SocketInputStream.java:116)~[na:1.8. 0_91] 在 java.net.SocketInputStream.read(SocketInputStream.java:170) ~[na:1.8.0_91] 在 java.net.SocketInputStream.read(SocketInputStream.java:141) ~[na:1.8.0_91] 在 org .apache.http.impl.io.SessionInputBufferImpl.streamRead(SessionInputBufferImpl.java:139) ~[httpcore-4.4.4.jar:4.4.4] at org.apache.http.impl.io.SessionInputBufferImpl.fillBuffer(SessionInputBufferImpl. java:155) ~[httpcore-4.4.4.jar:4.4.4] at org.apache.http.impl.io.SessionInputBufferImpl.readLine(SessionInputBufferImpl.java:284) ~[httpcore-4.4.4.jar:4.4 .4] 在 org.apache.http.impl.conn.DefaultHttpResponseParser.parseHead(DefaultHttpResponseParser.java:140) ~[httpclient-4.5.2.jar:4.5.2] at org.apache.http.impl.conn.DefaultHttpResponseParser.parseHead(DefaultHttpResponseParser.java:57) ~[httpclient-4.5.2.jar:4.5.2 ] 在 org.apache.http.impl.io.AbstractMessageParser.parse(AbstractMessageParser.java:261) ~[httpcore-4.4.4.jar:4.4.4] 在 org.apache.http.impl.DefaultBHttpClientConnection.receiveResponseHeader(DefaultBHttpClientConnection .java:165) ~[httpcore-4.4.4.jar:4.4.4] at org.apache.http.impl.conn.CPoolProxy.receiveResponseHeader(CPoolProxy.java:167) ~[httpclient-4.5.2.jar: 4.5.2] 在 org.apache.http.protocol.HttpRequestExecutor.doReceiveResponse(HttpRequestExecutor.java:272) ~[httpcore-4.4.4.jar:4.4.4] 在 org.apache.http.protocol.HttpRequestExecutor.execute( HttpRequestExecutor.java:124) ~[httpcore-4.4.4.jar:4.4.4] 在 org.apache.http.impl.execchain.MainClientExec。执行(MainClientExec.java:271)~[httpclient-4.5.2.jar:4.5.2] at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:184)~[httpclient-4.5.2 .jar:4.5.2] 在 org.apache.http.impl.execchain.RetryExec.execute(RetryExec.java:88) ~[httpclient-4.5.2.jar:4.5.2] 在 org.apache.http.impl .execchain.RedirectExec.execute(RedirectExec.java:110) ~[httpclient-4.5.2.jar:4.5.2] at org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:184) ~[ httpclient-4.5.2.jar:4.5.2] 在 org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:117) ~[httpclient-4.5.2.jar:4.5.2] 在 org. apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:55) ~[httpclient-4.5.2.jar:4.5.2] 在 org.springframework.cloud.netflix.zuul.filters.route.SimpleHostRoutingFilter。forwardRequest(SimpleHostRoutingFilter.java:324) ~[spring-cloud-netflix-core-1.1.0.RELEASE.jar:1.1.0.RELEASE] at org.springframework.cloud.netflix.zuul.filters.route.SimpleHostRoutingFilter.forward (SimpleHostRoutingFilter.java:287) ~[spring-cloud-netflix-core-1.1.0.RELEASE.jar:1.1.0.RELEASE] at org.springframework.cloud.netflix.zuul.filters.route.SimpleHostRoutingFilter.run( SimpleHostRoutingFilter.java:173) ~[spring-cloud-netflix-core-1.1.0.RELEASE.jar:1.1.0.RELEASE] at com.netflix.zuul.ZuulFilter.runFilter(ZuulFilter.java:112) ~[zuul -core-1.1.0.jar:1.1.0] 在 com.netflix.zuul.FilterProcessor.processZuulFilter(FilterProcessor.java:197) ~[zuul-core-1.1.0.jar:1.1.0] 在 com.netflix .zuul.FilterProcessor.runFilters(FilterProcessor.java:161) ~[zuul-core-1.1.0.jar:1.1.0] at com.netflix.zuul.FilterProcessor.route(FilterProcessor.java:120) ~[zuul-core-1.1.0.jar:1.1.0] at com.netflix.zuul.ZuulRunner.route(ZuulRunner.java:96) ~[zuul-core-1.1.0.jar:1.1 .0] 在 com.netflix.zuul.http.ZuulServlet.route(ZuulServlet.java:116) ~[zuul-core-1.1.0.jar:1.1.0] 在 com.netflix.zuul.http.ZuulServlet.service (ZuulServlet.java:81) ~[zuul-core-1.1.0.jar:1.1.0] at org.springframework.web.servlet.mvc.ServletWrappingController.handleRequestInternal(ServletWrappingController.java:158) [spring-webmvc-4.2 .6.RELEASE.jar:4.2.6.RELEASE] 在 org.springframework.cloud.netflix.zuul.web.ZuulController.handleRequestInternal(ZuulController.java:43) [spring-cloud-netflix-core-1.1.0.RELEASE .jar:1.1.0.RELEASE] 在 org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:147) [spring-webmvc-4.2.6.RELEASE.jar:4.2.6.RELEASE] 在org.springframework.web。servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:50) [spring-webmvc-4.2.6.RELEASE.jar:4.2.6.RELEASE] at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java: 961)[spring-webmvc-4.2.6.RELEASE.jar:4.2.6.RELEASE] 在 org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:895)[spring-webmvc-4.2.6.RELEASE .jar:4.2.6.RELEASE] 在 org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:967) [spring-webmvc-4.2.6.RELEASE.jar:4.2.6.RELEASE] 在 org. springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:869) [spring-webmvc-4.2.6.RELEASE.jar:4.2.6.RELEASE] 在 javax.servlet.http.HttpServlet.service(HttpServlet.java: 648)[tomcat-embed-core-8.0.33.jar:8.0.33] 在 org.springframework.web.servlet。FrameworkServlet.service(FrameworkServlet.java:843) [spring-webmvc-4.2.6.RELEASE.jar:4.2.6.RELEASE] at javax.servlet.http.HttpServlet.service(HttpServlet.java:729) [tomcat-embed -core-8.0.33.jar:8.0.33] 在 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:292) [tomcat-embed-core-8.0.33.jar:8.0.33] 在org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207) [tomcat-embed-core-8.0.33.jar:8.0.33] 在 org.apache.tomcat.websocket.server.WsFilter.doFilter( WsFilter.java:52) [tomcat-embed-websocket-8.0.33.jar:8.0.33] 在 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240) [tomcat-embed-core-8.0 .33.jar:8.0.33] 在 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207) [tomcat-embed-core-8.0.33.jar:8.0.33] 在 org.springframework.boot.actuate.autoconfigure.EndpointWebMvcAutoConfiguration$ApplicationContextHeaderFilter.doFilterInternal(EndpointWebMvcAutoConfiguration.java:261) [spring-boot-actuator-1.3 .5.RELEASE.jar:1.3.5.RELEASE] 在 org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) [spring-web-4.2.6.RELEASE.jar:4.2.6.RELEASE ] 在 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240) [tomcat-embed-core-8.0.33.jar:8.0.33] 在 org.apache.catalina.core.ApplicationFilterChain.doFilter( ApplicationFilterChain.java:207) [tomcat-embed-core-8.0.33.jar:8.0.33] 在 org.springframework.boot.actuate.trace.WebRequestTraceFilter.doFilterInternal(WebRequestTraceFilter.java:115) [spring-boot-actuator -1.3.5.RELEASE.jar:1.3.5。RELEASE] 在 org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) [spring-web-4.2.6.RELEASE.jar:4.2.6.RELEASE] 在 org.apache.catalina.core.ApplicationFilterChain .internalDoFilter(ApplicationFilterChain.java:240) [tomcat-embed-core-8.0.33.jar:8.0.33] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207) [tomcat-embed- core-8.0.33.jar:8.0.33] 在 org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:99) [spring-web-4.2.6.RELEASE.jar:4.2.6.RELEASE]在 org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) [spring-web-4.2.6.RELEASE.jar:4.2.6.RELEASE] 在 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:240) [tomcat-embed-core-8.0.33.jar:8.0.33] 在 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207) [tomcat-embed-core-8.0.33.jar:8.0.33] 在 org.springframework.web.filter .HttpPutFormContentFilter.doFilterInternal(HttpPutFormContentFilter.java:87) [spring-web-4.2.6.RELEASE.jar:4.2.6.RELEASE] at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) [ spring-web-4.2.6.RELEASE.jar:4.2.6.RELEASE] 在 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240) [tomcat-embed-core-8.0.33.jar: 8.0.33] 在 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207) [tomcat-embed-core-8.0.33.jar:8.0.33] 在 org.springframework.web.filter.HiddenHttpMethodFilter .doFilterInternal(HiddenHttpMethodFilter.java:77) [spring-web-4.2.6.RELEASE.jar:4.2.6.RELEASE] 在 org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) [spring-web-4.2.6.RELEASE.jar:4.2.6.RELEASE] 在 org .apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240) [tomcat-embed-core-8.0.33.jar:8.0.33] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java :207) [tomcat-embed-core-8.0.33.jar:8.0.33] 在 org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:121) [spring-web-4.2.6.RELEASE。 jar:4.2.6.RELEASE] 在 org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) [spring-web-4.2.6.RELEASE.jar:4.2.6.RELEASE] 在 org.apache .catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240) [tomcat-embed-core-8.0.33.jar:8.0.33] 在 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207) [tomcat-embed-core-8.0.33.jar :8.0.33] 在 org.springframework.boot.actuate.autoconfigure.MetricsFilter.doFilterInternal(MetricsFilter.java:103) [spring-boot-actuator-1.3.5.RELEASE.jar:1.3.5.RELEASE] 在 org. springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) [spring-web-4.2.6.RELEASE.jar:4.2.6.RELEASE] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain. java:240) [tomcat-embed-core-8.0.33.jar:8.0.33] 在 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207) [tomcat-embed-core-8.0.33 .jar:8.0.33] 在 org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:212) [tomcat-embed-core-8.0.33.jar:8.0.33] 在 org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106) [tomcat-embed-core-8.0.33.jar :8.0.33] 在 org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502) [tomcat-embed-core-8.0.33.jar:8.0.33] 在 org.apache.catalina.core。 StandardHostValve.invoke(StandardHostValve.java:141) [tomcat-embed-core-8.0.33.jar:8.0.33] at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79) [tomcat-embed -core-8.0.33.jar:8.0.33] 在 org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88) [tomcat-embed-core-8.0.33.jar:8.0.33] 在org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:522) [tomcat-embed-core-8.0.33.jar:8.0.33] 在 org.apache.coyote.http11.AbstractHttp11Processor。进程(AbstractHttp11Processor.java:1095)[tomcat-embed-core-8.0.33.jar:8.0.33] at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:672)[tomcat-embed-core -8.0.33.jar:8.0.33] 在 org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1502) [tomcat-embed-core-8.0.33.jar:8.0.33 ] 在 org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1458) [tomcat-embed-core-8.0.33.jar:8.0.33] 在 java.util.concurrent.ThreadPoolExecutor。 runWorker(ThreadPoolExecutor.java:1142) [na:1.8.0_91] 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [na:1.8.0_91] 在 org.apache.tomcat.util。 thread.TaskThread$WrappingRunnable.run(TaskThread.java:61) [tomcat-embed-core-8.0.33.jar:8.0.33] 在 java.lang.Thread.run(Thread.java:745) [na:1 .8.0_91]
server:
port: 9090
eureka:
client:
enabled: false
zuul:
#Service will be mapped under the /api URI
prefix: /clo-services/rest
stripPrefix: false
#Uncomment to disable auto-registering all services read from Eureka
#ignoredServices: '*'
routes:
proposals:
path: /**/proposals/**
url: http://localhost:6004
stripPrefix: false
common:
path: /**/common/**
url: http://localhost:8090
stripPrefix: false
host:
connect-timeout-millis: 5000
socket-timeout-millis: 10000
hystrix:
command:
default:
execution:
isolation:
thread:
timeoutInMilliseconds: 6000
spring:
application:
name: zuul-server
解决方案
尝试在您的 .yml 文件中替换它:
eureka:
client:
enabled: false
对此:
ribbon:
eureka:
enabled: false
推荐阅读
- mongodb - 数据库设计 - 将整个对象保存给用户还是只保存对象的 ID?
- python - 我可以从另一个文件中创建函数来使用我正在调用它的文件的变量吗?
- c# - 我在将 xml 字符串反序列化为类对象时收到 InvalidOperation 错误
- python - 与数组参数积分时如何修复“只有长度为1的数组可以转换为Python标量”
- azure - 如何在 Azure 免费服务中免费创建虚拟机
- r - 通过 gganimate 的动画条形图:在图下方更改文本的注释框
- javascript - 如何根据是否选中单选按钮交换按钮(使用 jQuery)
- sql-server - 在 SQL SERVER 2012 中为多个项目创建单个事务
- mysql - 在连接两个表时计算没有缺失值的总销售额
- html - 如何阻止固定元素阻止滚动其后面的页面?