Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Tomcat不断增长的开放文件/连接_Java_Apache_Tomcat_Gwt - Fatal编程技术网

Java Tomcat不断增长的开放文件/连接

Java Tomcat不断增长的开放文件/连接,java,apache,tomcat,gwt,Java,Apache,Tomcat,Gwt,我在CentOS 6.2服务器上运行Tomcat 6中的GWT站点。 我遇到了“打开的文件太多”错误。由于我们在现场有许多设备,每10秒通过互联网向tomcat服务器发送一次小消息,我怀疑连接没有正确关闭。然而,我找不到任何关于这一点的参考,只是在网上建议扩大允许打开的文件数量。 因此,我通过在/etc/init.d/tomcat6中添加以下行来修复它: ulimit-Hn 16384 ulimit-Sn 16384 在我看来,这不应该是处理这个问题的方式,但我在某个地方读到,tomcat的文件

我在CentOS 6.2服务器上运行Tomcat 6中的GWT站点。 我遇到了“打开的文件太多”错误。由于我们在现场有许多设备,每10秒通过互联网向tomcat服务器发送一次小消息,我怀疑连接没有正确关闭。然而,我找不到任何关于这一点的参考,只是在网上建议扩大允许打开的文件数量。 因此,我通过在/etc/init.d/tomcat6中添加以下行来修复它:

ulimit-Hn 16384

ulimit-Sn 16384

在我看来,这不应该是处理这个问题的方式,但我在某个地方读到,tomcat的文件使用量一直在增长,根据设计,直到达到tomcat的限制2000 IIRC,当达到该限制时,tomcat会清理它

所以我认为这个问题也可以解决,因为我找不到任何其他解决方案,直到tomcat停止正常工作,日志中没有任何指示,除了http POST的损坏/未完成处理。所以我进一步搜索,希望找到核心问题。我发现有人通过从OpenJDK1.6切换到Oracle自己的JDK1.6解决了这个问题。但是我使用的是Oracle的JDK1.7.040,所以这也不是问题所在

有什么想法吗?提前谢谢

问候,


Eyso

您尝试使用lsof来确定哪些文件处于打开状态?是的,我使用lsof | grep tomcat | grep-v grep | wc-lAt命令在服务器出现故障时,输出约为7992我每分钟记录一次,但没有超过8000 btw。哪些文件处于打开状态?您允许多少个并发连接?你允许我活着吗?