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