upstream module + backup servers
Maxim Dounin
mdounin на mdounin.ru
Чт Ноя 17 14:47:30 UTC 2011
Hello!
On Thu, Nov 17, 2011 at 09:35:24AM -0500, anon wrote:
> Maxim Dounin Wrote:
[...]
> > О том, что бекенд выключен,
> > nginx узнает, только отправив
> > на этот
> > бекенд какой-то из запросов
> > клиентов, и получив ошибку
> > (точнее,
> > заданное количество
> > ошибок). Пока этого не
> > произошло - бекенд
> > считается работающим, и
> > нагрузку на него
> > отправляют в обычном
> > порядке.
> >
> > (После того как произошло -
> > бекенд будет считаться
> > неработающим
> > в течении времени fail_timeout
> > для данного бекенда, по
> > умолчанию
> > 10 секунд. Подробнее см. [1].)
> >
> > [1]
> > http://nginx.org/ru/docs/http/ngx_http_upstream_mo
> > dule.html#server
>
> Т.е. правильно ли я понимаю, что если
> планируется выключать бекенд на долго,
> то лучше менять в конфиге эти сервера
> на down, т.к. в любом случае после времени
> заданном в fail_timeout nginx будет снова
> пытаться отправить туда пакеты, что бы
> проверить состояние сервера? Что будет
> создавать нежелательную задержку
> некоторых пакетов например раз в 30 сек,
> если задана директива fail_timeout=30s.
Да.
В 1.1.6 логика проверки после fail_timeout несколько улучшена
(после fail_timeout на бекенд отправляется только один запрос, и в
работу он включается только если этот запрос успешно отработает),
но в любом случае при штатном выключении бекендов - лучше об этом
nginx'у явно сообщать.
Maxim Dounin
Подробная информация о списке рассылки nginx-ru