да я, как бе, не собираюсь убеждать.
просто из того что я понял с самого начала - вас не устраивал раунд-робин из-за разнородности обслуживаемых приложений. я предположил, что можно разнести по апстримам таким образом, что отдельный апрстрим будет обслуживать группу с фиксированным откликом и раунд-робин станет подходящим алгоритмом.
нет так нет. возможно не очень вас понял.
вообще - фича динамической смены коэффициента веса бэкенда - не очень то "простая функция". но я бы тоже не отказался увидеть ее в nginx'e :)
4 апр. 2010, в 22:50, big bond написал(а): Да, согласен, стормозил про апстрим. Ваши советы весьма разумны, более того, сейчас все приблизительно так и сделано, только как я сказал, помимо простого раунд-робина текущий балансировщик умеет динамически менять коэффициент веса бекенда, основываясь на задержке отклика GET-запроса к каждому из них. Я всего лишь спросил, может ли энджи так, или нет, простая функция ведь. Если нет, то как говорится "будем искать" того, кто умеет. Убеждать меня в том, что это бессмысленно - бессмысленно ), я ищу то, что ищу, не более.
4 апреля 2010 г. 23:34 пользователь squirl <andriy.tovstik@xxxxxxxxx> написал:
4 апр. 2010, в 22:17, big bond написал(а):
> Из контекста вашего сообщения я подумал о фронтенде. Обычно апстримом именуют вышестоящего интернет-провайдера.
ну мы общаемся в рассылке nginx. тут под апстримом понимается вполне конкретный термин ;)
http://sysoev.ru/nginx/docs/http/ngx_http_upstream.html
> Очень просто определяется.
> На фронтенеде:
> -DNS-имя
> -Если домен один, то по URI
> На бекенде URI+Port
>
в этом случае, что мешает для одного DNS имени - один upstream (см. выше), ведущий на нужное приложение с проставленными внутри группы как нужно весами,
для другого - еще один upstream и т. п.
тогда в вашем примере:
> Приведу пример: скажем
> есть 10 бекендов, на которых крутится 16 разных веб-приложений.
> Аудитория у приложений разная как по количеству, так и по периодам
> пиковой нагрузки. Из этих 16 приложений одно самое "толстое" и для
> него полностью зарезервировано 3 бекенда, остальные бекенды
> универсальны. Так вот, при помощи простого раунд-робина не получится
> честно размазать нагрузку, "толстое" приложение будет периодически
> мешать остальным.
толстое приложение можно вынести в отдельный апстрим и никому оно при раундробине мешать не будет
_______________________________________________ nginx-ru mailing list nginx-ru@xxxxxxxxx http://nginx.org/mailman/listinfo/nginx-ru
--- WBR, Andriy Tovstik UNIX System Administrator Skype: andriy.tovstik Nick-handle: SQ22-UANIC
|