我让我的 apache (2.2.3) 通过 mod_proxy_ajp 与 tomcat 6.something 交谈。
我有一些可笑的长期请求(2-6 分钟),我认为我们在某个地方遇到了一些默认超时……哪里是正确的地方?
这是我的代理定义:
<Location /blah>
ProxyPass ajp://localhost:8010/blah
ProxyPassReverse ajp://localhost:8010/blah
</Location>
我让我的 apache (2.2.3) 通过 mod_proxy_ajp 与 tomcat 6.something 交谈。
我有一些可笑的长期请求(2-6 分钟),我认为我们在某个地方遇到了一些默认超时……哪里是正确的地方?
这是我的代理定义:
<Location /blah>
ProxyPass ajp://localhost:8010/blah
ProxyPassReverse ajp://localhost:8010/blah
</Location>
我不能说我试过这个,但我对这个问题很感兴趣,所以我做了一些谷歌搜索,发现了这个:
ProxyTimeout 指令
该指令允许用户指定代理请求的超时时间。当您有一个挂起的缓慢/错误的应用程序服务器时,这很有用,您宁愿只返回超时并优雅地失败,而不是等待服务器返回所需的时间。
默认值是 Timeout 指令的值,它又默认为 300 秒。所以尝试增加 ProxyTimeout 看看是否有帮助。
PS 请记住,Tomcat 也可能有自己的超时。 本文档包含更多信息(但请记住,我对这些设置没有个人经验)。
如果您想仅为 ajp 代理而不是全局更改超时,您可以添加“超时”参数,如下所示: