ПРОЕКТЫ 


  АРХИВ 


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[4]: keepalive от nginx к бакэнду. запрос фичи.



Hello sjsoft,

snr> Я  с вами полностью и категорично не согласен. Боюсь вы все-же 
поверхностно ознакомились с моей
snr> проблемой.
на  nginx  запросы  от бровсера по одному keepalive соединению приходят 
ПОСЛЕДОВАТЕЛЬНО, он их также
ПОСЛЕДОВАТЕЛЬНО  посылает на backend. если бы nginx умел говорить с backend по 
keepalive то всего на
всего не было бы лишних open/close между nginx и backend.

snr> Юзеры посылают по 3 запроса, на одном keep-alive соединении
snr> USER1<-ka-> NGINX <-cc-> BACKEND thread 1 (wrk with table 1)
snr>      <-req->      <-cc-> BACKEND thread 2 (blocked on mutex table 1)
это не правильно. req не пойдет (его бровсер не пошлет) пока не отработает 
первый и USER1 не получит
свой  ответ.  то  что бровсер МОЖЕТ открывать несколько соединений (в том числе 
и keepalive) это уже
другая  история.  то  что  вы  хотите  keepalive между nginx и backend не 
решает, а решает busy lock
(которые есть в mod_accel) и которых пока нету в nginx.

P.S. еще есть HTTP Pipelining 
http://www.mozilla.org/projects/netlib/http/pipelining-faq.html
вот оно как раз работает почти так как вы написали.

-- 
Best regards,
 Andrew                            mailto:sitnikov@xxxxxxxxxx




 




Copyright © Lexa Software, 1996-2009.