Re: Nginx не откликается на запросы ...
Pavel V.
pavel2000 на ngs.ru
Вт Фев 28 07:10:09 UTC 2012
Здравствуйте, Eugene.
Вы писали 28 февраля 2012 г., 13:18:20:
> Привет всем.
> Хочу убедится что я правильно понимаю механизмы работы NGINX.
> Есть основной сервер nginx с 8 workers, в нем есть location, который проксирует на другой сервер.
> Тот, другой сервер занимается сохранением статистики.
> Вопрос: Что произойдет, если сервер статистики перестанет откликаться на запросы?
> Я думаю что, когда все workers будут ждать ответа от сервера статистики (c таймаутом по умолчанию
> 60 сек), тогда случится отказ в обслуживании основного сервера.
workers будут ждать ответа, но они будут делать это не блокируясь, т.е. будут принимать новые
соединения и будут пытаться их обработать.
Если это будет запрос к location /stat/, то nginx будет посылать запросы на "сервер статистики" aka
"бэкенд" и _ожидать_ от него ответа (неблокируюясь ждать событий на сокете, "привязанном" к запросу).
В это же время этот же worker сможет принимать новые и обрабатывать уже имеющиеся у него соединения.
1 worker обслуживает много запросов, не зависимо от того, подвисло ли соединение к бэкенду или
нет. Обработка - неблокирующаяся. Она также неблокирующаяся в большинстве других случаев, либо
старается блокироваться на минимально возможное время.
--
С уважением,
Pavel mailto:pavel2000 at ngs.ru
Подробная информация о списке рассылки nginx-ru