Ошибка слишком большого количества открытых файлов в CentOS с системой SCOPE=
Я получаю следующий журнал ошибок при запуске нагрузочного теста в приложении
errnoStr=Too many open files, errno=24, SCOPE=system.
Кто-нибудь может объяснить значение SCOPE=system
Вот?
1 ответ
Поскольку это сообщение не является сообщением об ошибке из смолы, неясно, что означает система SCOPE=.
Что касается открытых файлов, вы хотите посмотреть на ulimit, а также проверить с помощью Resin's /rubber-admin количество дескрипторов файлов. Если вы используете Resin professional, система здравоохранения будет отслеживать дескрипторы открытых файлов. (Посмотрите на вкладку "метров" в / смола-администратора для графика.)
> ulimit -a
...
open files (-n) 1024
Для нагрузочного теста вам понадобится много открытых файлов, потому что вы хотите использовать большое количество сетевых подключений, а каждое сетевое подключение использует файловый дескриптор.
Если вы запускаете Resin как root, Resin может автоматически увеличивать количество открытых файлов. В журнале jvm-default.log Ресин скажет вам, во сколько он увеличился.
[13-03-05 12:05:37.047] {main} JNI: file, async keepalive (max=127744), socket
В противном случае вы можете установить его вручную в вашей операционной системе. (CentOS использует /etc/limits.conf.)
Для достижения максимальной производительности убедитесь, что вы используете Resin Professional. Если вы оцениваете, вы можете получить оценочную лицензию. Кроме того, с помощью Resin Pro и нагрузочного тестирования вы должны взглянуть на графики / смолы-администратора и профилировщика / смолы-администратора, чтобы увидеть ваши узкие места.