2010/11/7 paranoidchaos
<nginx-forum@xxxxxxxx>
>>* - это изменение дефолтового значения.
но это не нормально.
ненормально то что энджтнкс будет
менять дефолтовые параметры системы
Этим ключом nginx не меняет параметры системы. У каждого процесса есть таблица для открытых дескрипторов (файлы, соединения). Размер этой таблицы по-умолчанию в unix 1024. Для процессов, которые аггрегируют на себе десятки или сотни тысяч открытых соединений/файлов необходимо увеличивать эту табличку. Только для этих процессов.
Только для процессов можно увеличить через ulimit -n newfiletablesize перед запуском демона, либо сам демон должен делать необходимые системные вызовы для того чтобы у его потомков был правильный размер таблицы дескрипторов.
Если по какой-то причине nginx стартует не из под пользователя root, то pam может запретить ему расширить таблицу, поэтому, что для ulimit, что для ключа nginx надо будет прописать увеличение hard лимина в security/limits.conf. Но этот случай крайне редкий, поэтому в общем случае надо или добавлять в стартовые скрипты ulimit -n max_connections_per_nginx_child, либо выставлять это значение в конфигурационном файле nginx. Повторюсь, между двумя последними способами разница не очень большая.