ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: weight в upstream



On Wednesday 27 September 2006 00:50, Igor Sysoev wrote:
> On Sat, 23 Sep 2006, Sergey Serov wrote:
> > Есть проблемы с использованием weight в upstream в целях распределения
> > нагрузки.
> > Если вес выставлен одинаковый, то нагрузка распределяется равномерно.
> > Пример:
> > upstream test_backend {
> >        server localhost:59040 weight=10000;
> >        server other_server:59040 weight=10000;
> > }
> >
> > Если же выставить разный вес, то нагрузка распределяется неравномерно по
> > времени, каждые десять минут меняется сервер и все. Сужу об этом по
> > графикам загрузки серверов. 10 минут все запросы идут на один сервер,
> > затем 10 мин. на другой.
> > Пример:
> >
> > upstream test_backend {
> >        server localhost:59040 weight=10000;
> >        server other_server:59040 weight=5000;
> > }
> >
> > location / {
> >            expires epoch;
> >            fastcgi_pass    test_backend;
> >            fastcgi_upstream_max_fails 0;
> >            fastcgi_next_upstream error timeout invalid_header http_500;
> >            include fastcgi_param.conf;
> > }
> >
> > Но обнаружил, что если цель треть нагрузки отправлять на другой сервер,
> > то такое помогает:
> >
> > upstream test_backend {
> >        server localhost:59040 weight=10000;
> >        server localhost:59040 weight=10000;
> >        server other_server:59040 weight=10000;
> > }
>
> Да, сейчас алгоритм работает так: берётся вес апстрима и пока
> не уменьшиться до нуля, к следующему не переходим, поэтому большие
> веса неравномерно распрeamяеделяют нагрузку. Я планирую в скором времени
> сделать алгоритм, который бы равномерно распределял запросы.
>

У меня такой большой вес исключительно для того, что бы можно было прописать 
бэкапные сервера еще с минимально возможным весом. Чтобы срабатывало 
fastcgi_next_upstream
Было бы неплохо, напр. задавать вес=0 и при этом эти сервера участвовали 
_только_ в fastcgi_next_upstream. Тогда и текущий алогоритм не мешал бы.



 




Copyright © Lexa Software, 1996-2009.