Назад | Перейти на главную страницу

Безопасно ли устанавливать очень высокий предел для процесса?

В настоящее время у меня есть следующая запись в /etc/security/limits.d/90-nproc.conf на основе Mongo DB рекомендуемые настройки ulimit.

mongod     soft    nofile    64000
mongod     soft    nproc     64000

Мне нужно значительно увеличить количество разрешенных файловых дескрипторов, скажем - 999999. В обычных ситуациях, вероятно, будет доступ только к нескольким тысячам файлов в день. Причина большого количества файлов заключается в том, как работает механизм хранения WiredTiger. Он использует несколько файлов на коллекцию, которых у меня много тысяч.

Есть ли какие-то негативные последствия для этой ситуации?

Вредит ли производительности системы большое количество открытых, но практически неиспользуемых файловых дескрипторов?

nproc - ограничение на количество процессов. Если вы имеете в виду файлы, которые вам нужны nofiles.

Это просто счетчик максимального лимита. Увеличение лимита не использует ресурсы, пока в системе не используется много вещей.

64k - это много процессов. Ваша производительность может пострадать в зависимости от того, сколько у вас памяти и процессора. Из-за такого количества задач накладные расходы планировщика Linux могут стать значительными.

Также при необходимости настройте файловые дескрипторы, как указано в Ссылка mongodb на ulimit. Дескрипторы файлов относительно легкие, и вам нужен один для каждого открытого файла и сокета, но 64 КБ по-прежнему много.

Одна проблема, которую я вижу, заключается в том, что если мы дадим слишком много nproc пользователю, и пользователь действительно сможет достичь из-за ошибки в коде, поэтому root не будет ничего для выполнения. Другой проблемой будет то, что каждому процессу потребуются ресурсы для поддержания своего состояния и выполнения обработки, если мы дадим разработчику столько ресурсов, которые могут использовать систему, и, безусловно, проблематично для системы, также вы должны учитывать другие ресурсы, такие как ОЗУ и т. Д., Для таких больших ограничений.