Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Странные 1024 коннекта
07.11.2010 18:04, Gena Makhomed wrote:
On 07.11.2010 17:39, Alex Vorona wrote:
worker_rlimit_nofile работает, пока число открытых файлов при
configtest
не превышает 1024. Потом - только увеличение лимита снаружи nginx.
разумеется, ведь директива worker_rlimit_nofile изменяет лимит nofile
только для worker-процессов, а конфиг с диска читает только master.
кроме варианта "увеличение лимита снаружи nginx" есть еще два:
* добавить директиву master_rlimit_nofile
Да, это, похоже, пригодилось бы.
* использовать генаратор конфига, который будет на выходе делать один
большой файл nginx.conf
Это не решает проблему с 1к+ логов в одном большом nginx.conf.
а это точно необходимо - писать 1к+ логов в процессе работы nginx ?
ведь это будет performance degrade из-за большого количества операций
позиционирования при записи в каждый из этих лог-файлов
ОС тоже буфферизирует
и/или избыточное
использование памяти для буферизации операций записи. не лучше ли будет
сделать post-обработку логов nginx скриптом на ionice idle priority,
а из nginx писать только в один / несколько лог-файлов ?
логи ошибок уже так тривиально не попарсишь. Замедления в работе nginx именно из-за
большого количества открытых файлов логов я не замечал.
Всё можно изменять, городя костыли, но зачем. Например байт-логи со строчками размером в
2-8 байт идентифицировать ещё дополнительно server_name'ом с разделителем на каждую
строчку и потом парсить - imho оверхед. На том количестве доменов, на котором буфер для
лога 1-16к будет занимать значительный размер в сумме - конфигурацию nginx уже придётся
оптимизировать итак. А для инсталляций 1-5к доменов это ещё не будет избыточным
использованием памяти. AFAIK во FreeBSD до сих пор нет приоритетов IO.
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://nginx.org/mailman/listinfo/nginx-ru
|