【发布时间】:2016-09-16 05:34:38
【问题描述】:
在 AWS 下使用 bitnami tomcat stack(Apache + Tomcat)。直到现在一切都很完美。 Webapps 中的一项新功能需要超过 2 分钟的等待时间才能完成。但在执行停止之前,Apache 发送 HTTP-500 错误。检查tomcat控制台时,它同时显示以下错误。
» 2016 年 5 月 19 日 16:13:27.370 2016 年 5 月 19 日星期四 16:13:27 +0530, (FrameworkServlet.java:984) 调试:无法完成请求, ClientAbortException: java.net.SocketException: Broken pipe at org.apache.catalina.connector.OutputBuffer.realWriteBytes(OutputBuffer.java:413) 在 org.apache.tomcat.util.buf.ByteChunk.flushBuffer(ByteChunk.java:480) 在 org.apache.tomcat.util.buf.ByteChunk.append(ByteChunk.java:366) 在 org.apache.catalina.connector.OutputBuffer.writeBytes(OutputBuffer.java:438) 在 org.apache.catalina.connector.OutputBuffer.write(OutputBuffer.java:426) 在 org.apache.catalina.connector.CoyoteOutputStream.write(CoyoteOutputStream.java:91)
在尝试处理多个示例请求时,发现在 60 秒的等待后正好收到了 HTTP-500。
Tomcat server.xml
<Connector port="8099" protocol="AJP/1.3" redirectPort="8443" connectionTimeout="300000" />
Tomcat.conf
<LocationMatch "^/(?!(phpmyadmin([^a-zA-Z0-9]|$))).*$">
ProxyPass ajp://localhost:8009 connectiontimeout=36000 timeout=36000
</LocationMatch>
检查 linux 的 Timeout 框,发现是 2hrs。 它可能是 Apache 或 Apache-Tomcat 连接器超时问题。 bitnami 堆栈中的这些配置在哪里进行更改。
【问题讨论】:
-
同样的情况! @arvindwill 你找到解决方案了吗?
标签: apache tomcat bitnami ajp mod-proxy-ajp