Welcome! Log In Create A New Profile

Advanced

Re: master_file_limit

Alex Vorona
February 23, 2010 06:24AM
23.02.2010 00:54, Kirill A. Korinskiy wrote:
> At Mon, 22 Feb 2010 16:27:51 +0200,
> Alex Vorona <voron@amhost.net> wrote:
>> 21.02.2010 23:56, Igor Sysoev wrote:
>>> On Mon, Feb 22, 2010 at 12:24:56AM +0300, Kirill A. Korinskiy wrote:
>>>
>>>> At Sun, 21 Feb 2010 14:03:07 +0200,
>>>> Alex Vorona <voron@amhost.net> wrote:
>>>>> Привет,
>>>>>
>>>>> При попытке релоада nginx'а с конфигурацией, которая содержит > 1024 файлов(> 500 доменов,
>>>>> по 2 лога на домен), nginx не релоадится с ошибкой
>>>>> 2010/02/21 12:42:42 [emerg] 17723#0: open() "/var/log/nginx/www.domain.com.error.log"
>>>>> failed (24: Too many open files)
>>>> дык, он просто выставляет rlimit после того как прочел конфиг, а т.к. ошибка происходит на
>>>> этапе чтения конфига, получаешь что получаешь. В случае reload у тебя уже есть
>>>> стотыщмильонов файловых дискрипторов, вот он и перечитывает их.
>>>>
>>>> Игорь, а зачем было вообще делать rlimit? зачем дублировать ручку системы?
>>> Появление worker_rlimit_... связано с рядом причин:
>> Я правильно понимаю, что master_rlimit_... не предвидится и стОит довольствоваться
>> системными ручками для поднятия лимитов? Не похоже, что проблема только у меня.
>>
>
> увы, но придется немного менять логику обработки конфига для реализации вашей хотелки.
>
> Если очень сильно хочется, могу вам патчик сделать. Хочется?
>
Спасибо, но поддерживать патчи ещё хуже чем rc.d-скрипты.

Единственное что мне не нравится - лимит нельзя поднять без прерывания в обслуживании.
reload работает пока # сокетов + # логов текущей конфигурации + # логов новой конфигурации
< лимита файловых дескрипторов, с которым был изначально запущен nginx. online upgrade
пока # сокетов + # логов новой конфигурации < лимита файловых дескрипторов, с которым был
изначально запущен nginx. Ну и в последнем случае nginx вообще не запустится без
предварительного увеличения лимита файловых дескрипторов. Лимит файловых дескрипторов для
worker'ов можно изменить с reload'ом, например при включении/увеличении open_file_cache, а
при увеличении количества логов - только подкрутка лимита в rc.d-скриптах и рестарт с
прерыванием обслуживания.

_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://nginx.org/mailman/listinfo/nginx-ru
Subject Author Posted

master_file_limit

Alex Vorona February 21, 2010 07:04AM

Re: master_file_limit

Kirill A. Korinskiy February 21, 2010 04:26PM

Re: master_file_limit

Igor Sysoev February 21, 2010 04:58PM

Re: master_file_limit

Alex Vorona February 22, 2010 09:30AM

Re: master_file_limit

Kirill A. Korinskiy February 23, 2010 03:22AM

Re: master_file_limit

Igor Sysoev February 23, 2010 05:08AM

Re: master_file_limit

Alex Vorona February 23, 2010 06:24AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 135
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready