Hello!
On Tue, Jul 17, 2018 at 02:40:18AM -0400, Ilya Evseev wrote:
> А парсинг конфига - это операция по определению однопоточная?
> Её никак не распараллелить?
> Пользователи меняют настройки своих сайтов довольно часто, при этом
> автоматически перестраивается конфиг nginx'a и вызывается nginx -t && nginx
> -s reload.
> Пока https был не в моде, это происходило мгновенно.
> Когда https появится у всех, каждое перечитывание будет длиться по минуте и
> дольше.
> Перспектива малоприятная.
Кажется, что для начала стоит избавится от двух лишних операций
парсинга конфига, которые делает конструкция "nginx -t && nginx -s
reload". Ибо при таком подходе
- сначала "nginx -t" парсит и тестирует конфигурацию;
- потом "nginx -s reload" парсит конфигурацию, чтобы получить
из неё pid-файл, после чего отправляет сигнал работающему
мастеру;
- и наконец уже мастер парсит конфигурацию, и применяет её.
Из всех этих действий нужно на самом деле только последнее. Если
в конфигурации ошибка - мастер это обнаружит сам, и конфигурацию
отклонит. Посылать сигнал мастеру можно и нужно напрямую, "kill
-HUP `cat /path/to/nginx.pid`".
--
Maxim Dounin
http://mdounin.ru/
_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru