Apache Tomcat异常-打开的文件太多
我们正在Amazon Linux的Apache
Tomcat中运行Web服务。最初,Web服务运行正常。发出超过1000个Web请求后,我们收到太多打开文件异常。同样,当我们重新启动tomcat服务器时,将解决此问题。
请在下面找到例外
25-Apr-2016 10:05:52.628 SEVERE [http-nio-8080-Acceptor-0] org.apache.tomcat.util.net.NioEndpoint$Acceptor.run Socket accept failed java.io.IOException: Too many open files
at sun.nio.ch.ServerSocketChannelImpl.accept0(Native Method)
at sun.nio.ch.ServerSocketChannelImpl.accept(ServerSocketChannelImpl.java:422)
at sun.nio.ch.ServerSocketChannelImpl.accept(ServerSocketChannelImpl.java:250)
at org.apache.tomcat.util.net.NioEndpoint$Acceptor.run(NioEndpoint.java:686)
at java.lang.Thread.run(Thread.java:745)
PS:我们不在Web服务中进行任何与文件相关的操作。
回答:
看起来,打开文件有一些限制。当您在Linux上运行时,我怀疑您的文件描述符已用完。
签出ulimit命令以查看允许打开的文件数。
ulimit -n
您可以通过编辑来更改打开文件的数量:
/etc/security/limits.conf
并添加如下内容:
* soft nofile 4096* hard nofile 4096
您可以在此处查看有关limit.conf的更多信息。
默认限制是1024,对于某些Java应用程序来说可能太低。
本文中有关增加最大打开文件数的更多信息:http : //www.cyberciti.biz/faq/linux-increase-the-
maximum-number-of-open-files/
以上是 Apache Tomcat异常-打开的文件太多 的全部内容, 来源链接: utcz.com/qa/425157.html