库升级(GWT 2.4.0 -> GWT 2.5.0)是必要的。不幸的是,较新的版本似乎会导致更多的问题,而不是它实际解决的问题。
许多“死”连接(数百个)在服务器上累积,直到它停止响应。netstat -na
给出以下结果:
...
tcp 121 0 10.0.0.5:8181 XXX.XXX.XXX.XXX:4609 CLOSE_WAIT
...
它仅发生在 GWT 2.5.0 上,而没有发生在 GWT 2.4.0 上。代码没有其他变化。不幸的是,我无法在本地重现该问题。在我的本地环境和服务器机器上都使用了 GlassFish 2.1.1(我现在坚持使用它,但是如果该问题与应用程序服务器有关,那么知道它仍然很高兴)。服务器上的操作系统是 Debian Squeeze 64 位,本地我使用 Wheezy 32 位。
在绝望中,我使用以下代码添加了过滤器:httpServletResponse.setHeader("Connection", "close");
但没有结果。
您是否有任何想法如何解决该问题或如何跟踪哪些连接导致问题以及何时导致问题?谢谢!