ПРОЕКТЫ 


  АРХИВ 


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



On Tue, 13 Jun 2006 sjsoft@xxxxxxxxxx wrote:

Господа товарищи, столкнулся  с не большим багом.
1) стоит nginx версия 3.49
2) он настроен на отдачу статики и проксирование к бакэнду.
3) бакэнд на тредовой моделе основан. мой код.

Проблема в следующем, как я понимаю, кип алайв сооединения от nginx до
backend не устанавливаются, поэтому, если один пользователь послал к
примеру одновременно 7-10 запросов(пока пул из тредов на 10 стоит),
все треды, сервера забиваются, выполнением схожей ф-и для этого
пользователя. Так как треды по очереде начинают блочить все ресурсу по
пути работы ф-ии, они все буксуют... Создается толкучка в борьбе за
ресуры, сервер практически подвисает в ожидании.

Мое видиние решения:
Как я полагаю, keep-alive запросы, от nginx выстраивались бы в очередь в один 
из тредов,
первым акцептнувшим и тогда бы не создавалось очереди к одним и тем же
ресурсам и ожидал бы именно один пользователь, а не все сразу.

P.S. увеличение очереди пула, решает только часть проблемы.

какие будут идеи?

Игорь, планируете ли вы когда либо, сделать настраивоемо keep-alive
между nginx и backend'ами ?

Постоянные соединения с бэкендом планируются, но в данном случае они не
помогут. Помогут busy lock'и, которые тоже планируются.


Игорь Сысоев
http://sysoev.ru



 




Copyright © Lexa Software, 1996-2009.