【发布时间】:2012-08-22 11:54:33
【问题描述】:
我们有一个 servlet,它接受请求并在外部系统上执行某些操作。很多时候,这些外部系统响应缓慢,请求时间超过 60 秒。在日志中我们注意到,只要客户端仍处于连接状态,恰好在 60 秒后,就会向 servlet 发出一个新请求(使用相同的 post 参数)。
谷歌搜索发现其他应用服务器(例如 Glassfish 等)也报告了相同的情况。原因似乎是在 60 秒超时后,servlet 或 Web 容器正在超时调用并重复请求。请注意,这似乎是 servlet 或容器启动的刷新,而不是真正从客户端发布的。避免这种情况的方法是显然增加超时。 (在此处阅读有关类似问题的更多信息:Java - multiple requests from two WebContainer threads)
我将 deploy/jbossweb.sar/server.xml 中的 connectionTimeout 增加到 120000(2 分钟),但调用仍然在 60 秒后重复。
知道如何在 JBoss 中增加超时或避免这种行为吗?
谢谢 斯里尼
【问题讨论】: