ПРОЕКТЫ 


  АРХИВ 


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: connection retry, proxy_pass retry?



On Tuesday 26 September 2006 17:58, drmarker wrote:
> Привет.
>
> Можно ли с помощью upstream_module сделать что-нибудь типа connection
> retry при proxy_pass?
>
> FE (nginx) и BE (apache), территориально разнесены, связь между ними
> не идеальная, бывают перебои до двух-трех минут. В логах появляются
> строчки типа:
>
> upstream timed out (110: Connection timed out) while connecting to upstream
> recv() failed (113: No route to host) while reading response header
> from upstream
>
> Можно ли как-то сделать, чтобы FE при обрыве сделал ЕЩЕ попытку для
> ЭТОГО ЖЕ request?

Можно, у меня это отлично работает.
Есть три зеркала в разных странах, каждое шлет запрос локалхосту, а если 
ошибка, то повторяет запрос на другой сервер.


    upstream backend {
        server localhost:59040 weight=100000;
        server localhost:59040 weight=100000;
        server a:59040 weight=1;
        server b:59040 weight=1;
        server c:59040 weight=1;
    }

        location / {
            expires epoch;
            fastcgi_pass   backend;
            fastcgi_upstream_max_fails 0;
            fastcgi_next_upstream error timeout invalid_header http_500;
            fastcgi_read_timeout 10;
            fastcgi_connect_timeout 5;
            include fastcgi_param.conf;
        }





 




Copyright © Lexa Software, 1996-2009.