ПРОЕКТЫ 


  АРХИВ 


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: Постоянное соединение с upstream



On 19.04.2010 16:37, Kpoxman wrote:
> Из-за кучи соединений у меня (в Linux) возникает ошибка "nf_conntrack: table
> full, dropping packet".

А зачем вообще фильтровать трафик между бэкендом и фронтендом через stateful
firewall.

IMHO firewall между фронтендом и бэкендом лучше вообще отключить, но если очень
нужно то должно хватьить stateless.

> Увеличил соответсвующий лимит - ошибка исчезла. Но вопрос остался: зачем
> создавать отдельное соединение на каждый запрос?

Для keep-alive нужна поддержка HTTP/1.1 (включая chunked encoding) при работе
nginx в качестве http-клиента (отправке запросов на бэкенд). Реализовать это не
очень просто, хотя сторонние патчи для этого вроде есть.

С другой стороны если между фронтендом и бэкендом быстрая сеть, а на бэкенде на
создание нового соединения стратися относительно малоресурсов, то keep-alive не
сильно нужен (экономит сравнительно мало ресурсов).

keep-alive между фронтендом и бэкедном реально полезен когда:
- между фронтендом и бэкендом относительно медленная сеть (сервера в разных ДЦ)
- бэкенд тратит на создание новой коннекции много ресурсов (например многие
сервера на java)

-- 
 Anton Yuzhaninov

_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://nginx.org/mailman/listinfo/nginx-ru


 




Copyright © Lexa Software, 1996-2009.