当前位置: 首页 > 知识库问答 >
问题:

请求结束后,为什么我的tomcat应用程序中有太多打开的文件?

狄天逸
2023-03-14

共有1个答案

申屠鹏
2023-03-14

对此,我可以想出几个解释:

>

  • 文件描述符可以是与长寿命WebSocket关联的套接字。

    它们可以是由JDBC连接池保持打开状态的数据库连接。

    您的应用程序代码可能泄漏打开的文件、套接字、JDBC或HTTPClient连接或类似的东西。这些将保持打开状态,直到GC运行并发现它们不可访问。当它们(最终)被收集时,文件描述符将被关闭。

    解决办法将取决于原因。例如,如果您正在泄漏打开的文件或JDBC连接,解决方案是使用try with resources确保文件/连接始终关闭。

  •  类似资料:
    • 今天早些时候,我访问了我最近推出的一个网站,页面上充斥着一个丑陋的jasperex0019:java.io.filenotfoundexception: /opt/tomcat/webapps/root/web-inf/lib/jstl-1.2.jar(打开的文件太多)。我检查了我的服务器日志和tomcat日志,它们充满了相同的错误。我增加了tomcat的最大打开文件限制,作为保持网站运行的临时解

    • 我有一个在tomcat上运行的应用程序,有时会出现以下错误: .... 我检查了打开文件的限制,它是1024个,但是当我检查了lsof应用程序的打开文件数量时,它接近200个,如果它没有达到限制,为什么会发生这种情况?我应该增加限额吗?是否有其他原因导致此错误?让服务重新正常运行的唯一方法是重新启动tomcat,还有其他恢复正常的方法吗? 提前谢谢。 编辑:这里是处理doPost方法的servle

    • 我想知道太多文件打开错误的确切问题。我通过谷歌寻找解决方案,但我不知道为什么会出现这个问题以及如何解决这个问题。 堆栈错误:严重:套接字接受失败。网SocketException:java上打开的文件太多。网普通袜子。java上的socketAccept(本机方法)。网抽象素socketimpl。在java上接受(AbstractPlainSocketImpl.java:398)。网服务器插座。j

    • 从Tomcat 7迁移到Tomcat 9.0之后。20(使用相同的Java版本1.8.0_25运行)我们在Linux RHEL 7上的JSF2 web应用程序存在问题。一段时间后,我们会遇到如下异常: 经过一段时间的搜索,我发现xhtml文件有许多打开的文件描述符,通过执行这个命令(其中4025是Tomcat进程ID): 这不是完整的列表-还有很多。 列出的文件数量会上下波动。对我来说,只要页面在

    • 我们正在AmazonLinux中的ApacheTomcat中运行一个web服务。最初web服务运行正常。在发出1000多个web请求后,我们收到了太多的打开文件异常。当我们重新启动tomcat服务器时,这个问题将再次得到解决。 请查看以下例外情况 附言:我们在网络服务中没有做任何与文件相关的操作。

    • 我有一个主活动MainActivity,它是我的android应用程序的入口点。它通过发射器正确发射。然而,当我尝试执行startActivity时,我看到活动试图启动的一些调试,一些代码正确启动,但MainActivity从未启动。 我认为这可能与意图有关: 对吗? 从内部活动来看,我有 我甚至看到 10-11 22:23:46.026:INFO/ActivityManager(472):从pi