我在应用程序上运行负载测试时收到以下错误日志
errnoStr=Too many open files, errno=24, SCOPE=system.
有人能解释一下这里的意思SCOPE=system
吗?
我在应用程序上运行负载测试时收到以下错误日志
errnoStr=Too many open files, errno=24, SCOPE=system.
有人能解释一下这里的意思SCOPE=system
吗?
由于该消息不是 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 分析器以了解您的瓶颈是什么。