【发布时间】:2014-02-21 14:11:40
【问题描述】:
您好,我收到以下错误
Exception : java.net.SocketException: Too many open files
我正在从 geronimo 2.1 迁移到 Wildfly 8
在测试新的应用程序服务器期间,我们收到此错误。没有其他任何东西改变了完全相同的网络应用程序运行,我们在 Geronimo 上从未遇到过这个问题。
有什么想法吗?
谢谢
汤姆
【问题讨论】:
您好,我收到以下错误
Exception : java.net.SocketException: Too many open files
我正在从 geronimo 2.1 迁移到 Wildfly 8
在测试新的应用程序服务器期间,我们收到此错误。没有其他任何东西改变了完全相同的网络应用程序运行,我们在 Geronimo 上从未遇到过这个问题。
有什么想法吗?
谢谢
汤姆
【问题讨论】:
看起来你的新应用服务器是“fd-happy”。
您需要做的是配置您的系统,以便提高应用程序服务器的文件描述符数量限制。
识别运行 webapp 容器的用户;让我们说它是“燧石”。完成后,将此行添加到/etc/security/limits.conf:
flint hard nofiles 4096
由于打开文件的数量通常限制为 1024,这将使其翻两番。
在最近的发行版中,还有一个 /etc/security/limits.d 目录:您可能希望在其中创建一个文件并将上面的行放入其中。
编辑:对于给定的用户,可以使用ulimit -n查询当前打开文件的数量限制;尝试ulimit -a 查看所有当前定义的限制。
编辑 2:如果您提高了“nofile 限制”并且在运行一段时间后仍然看到错误,那么您有一个错误 - 某处......
【讨论】: