По поводу сигналов ошибся похоже, после kill -HUP 5391 появились новые
рабочие процессы, причем очень быстро исчезли старые, хотя обычно старые
выходят секунд 30, т.к. заканчивают обработку текущих запросов, только
новые запросы все равно не обрабатываются:
Если вести лог на уровне notice, то в логах будут записи о сигналах,
старте и выходе процессов:
2005/11/01 11:35:32 [notice] 82527#0: signal 1 (SIGHUP) received,
reconfiguring
2005/11/01 11:35:32 [notice] 82527#0: reconfiguring
2005/11/01 11:35:32 [notice] 82527#0: using the "kqueue" event method
2005/11/01 11:35:32 [notice] 82527#0: start worker processes
2005/11/01 11:35:32 [notice] 82527#0: start worker process 19260
2005/11/01 11:35:33 [notice] 82527#0: signal 23 (SIGIO) received
2005/11/01 11:35:33 [notice] 82527#0: signal 23 (SIGIO) received
2005/11/01 11:35:33 [notice] 18530#0: gracefully shutting down
2005/11/01 11:39:02 [notice] 18530#0: exiting
2005/11/01 11:39:02 [notice] 82527#0: signal 20 (SIGCHLD) received
2005/11/01 11:39:02 [notice] 82527#0: worker process 18530 exited with
code 0
2005/11/01 11:39:02 [notice] 82527#0: signal 23 (SIGIO) received
Мне удалось как-то смоделировать ситуацию :)
При изменении кол-ва воркеров в конфиге с 3 до 1, а потом kill -HUP, nginx
точно также перестает обрабатывать запросы.
То есть, nginx номрально обрабатывает запросы, после чего делаем -HUP,
предварительно уменьшив число рабочих процессов и запросы перестают
обрабатываться ?
Так точно.
У меня не получается воспроизвести. А можно сделать отладочный лог
и прислать мне ?
Игорь Сысоев
http://sysoev.ru