0

我在应用程序上运行负载测试时收到以下错误日志

errnoStr=Too many open files, errno=24, SCOPE=system.

有人能解释一下这里的意思SCOPE=system吗?

4

1 回答 1

0

由于该消息不是 Resin 错误消息,因此不清楚 SCOPE=system 的含义。

对于打开的文件,您需要查看 ulimit 并使用 Resin 的 /resin-admin 检查文件描述符计数。如果您使用的是 Resin 专业版,健康系统将跟踪打开的文件描述符。(查看 /resin-admin 中的“仪表”选项卡以获取图表。)

> ulimit -a 
...
open files   (-n) 1024

对于负载测试,您需要有很多打开的文件,因为您想对大量网络连接施加压力,并且每个网络连接都使用一个文件描述符。

如果以 root 身份启动 Resin,Resin 会自动增加打开的文件。在 jvm-default.log 日志中,Resin 会告诉你它增加了多少。

[13-03-05 12:05:37.047] {main}   JNI: file, async keepalive (max=127744), socket

否则,您可以在操作系统中手动设置它。(CentOS 使用 /etc/limits.conf。)

为获得最高性能,请确保您使用的是 Resin Professional。如果您正在评估,您可以获得评估许可证。此外,使用 Resin Pro 和负载测试,您应该查看 /resin-admin 图表和 /resin-admin 分析器以了解您的瓶颈是什么。

于 2013-03-05T20:09:48.503 回答