Я получаю сообщение об ошибке «слишком много открытых файлов». Это происходит, когда у процесса около 256 одновременных подключений. Если я сделаю
sysctl -A | grep maxfiles
Я вижу:
kern.maxfiles = 12288
kern.maxfilesperproc = 10240
Мой сервер управляется launchd. Нужно ли мне также устанавливать параметр NumberOfFiles в файле plist?
Настройка ограничения по умолчанию для bash в OSX выглядит как 256.
Итак, как говорит Джо:
ulimit -n x
Где x может быть большим числом.
Возможно, вы захотите добавить это в сценарий запуска процесса при его запуске или в свой .bashrc, чтобы сделать его более постоянным.
lsof позволит вам увидеть, что представляет собой каждый файл, хотя файлы в этом контексте также являются сетевыми соединениями, каналами, а также фактическими файлами.