Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: php-fpm upstream pool
On 02.12.2011 12:07, Maxim Dounin wrote:
Алгоритм такой: упавший
бекенд не будет признан снова работающим, пока не отработает
успешно хотя бы один запрос, на него отправленный. Запросы на
него будут отправляться 1 раз в fail_timeout.
Если запросы долгие (много длиннее fail_timeout, т.е. не просто
"тяжёлые запросы к базе", а какой-нибудь streaming или long
polling) это, потенциально, может привести к тому, что бекенд
(после смерти и оживания обратно) некоторое время будет продолжать
считаться мёртвым (пока хотя бы один запрос не завершится, или
клиент его не закроет). Нагрузка, соответственно, будет идти
большей частью на другие бекенды.
Есть, впрочем, мнение, что для streaming/long polling подобное
поведение тоже вполне разумно, и максимум что в подобных ситуациях
следует сделать - это уменьшить fail_timeout.
а почему нельзя делать health checks не тратя на это запросы клиентов,
например, таким способом, как это сделано в haproxy. и если эта light
проверка жив ли бекенд завершится не успешно - то и нет смысла туда
отправлять запрос пользователя и устраивать ему denial of service ?
--
Best regards,
Gena
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru
|