Re: несколько fastcgi серверов

Gena Makhomed gmm at csdoc.com
Sun Aug 31 15:27:42 MSD 2008


On Sunday, August 31, 2008 at 0:58:55, КириллХазановский wrote:

К> nginx будет посылать запросы всем fastcgi серверам по очереди,
К> каждый сервер может обрабатывать много запросов одновременно.

запросы распределяются по upstream серверам в режиме round-robin,
но с учётом весов серверов. по умолчанию вес сервера равен одному.

К> Если какой-то fastcgi сервер решил что он уже перегружен
К> (слишком много запросов он еще не ответил), то он может
К> послать nginx обратно ошибку (например 503) и тогда nginx
К> его исключит на следуюшие N секунд как я задал в fail_timeout.

если fastcgi-сервер решил, что он перегружен - он может временно
не принимать новых запросов (не делать accept на server socket).

если все backend`ы нагружены равномерно - у других fastcgi-серверов
в этот момент будет примерно такая же ситуация, они тоже перегружены.

К> Так я могу гарантировать что запросы передаются только
К> серверам которые я не квалифицировал как слишком занятые
К> (если все серверы заняты то это уже моя проблема).
К> Правильно ли я это все понял?

если backend`ы различаются между собой по мощности -
надо выравнять нагрузку на них через параметр weight=

даже если запросы различаются между собой по времени обработки -
они всеравно будут равномерно распределяться по всем backend`ам.

-- 
Best regards,
 Gena






More information about the nginx-ru mailing list