Re: Странное поведение с httpready и dataready

Maxim Dounin mdounin at mdounin.ru
Mon Mar 31 11:35:10 UTC 2014


Hello!

On Sun, Mar 30, 2014 at 11:58:50AM +0400, Михаил Монашёв wrote:

> Здравствуйте, Vladislav.
> 
> >> > # grep accept_filter nginx.conf
> >> > listen xx.xx.xx.57 accept_filter=httpready accept_filter=dataready ;
> >> > listen xx.xx.xx.60 accept_filter=httpready accept_filter=dataready ;
> >> > listen xx.xx.xx.58 accept_filter=httpready accept_filter=dataready ;
> >> > listen xx.xx.xx.56 accept_filter=httpready accept_filter=dataready ;
> >> 
> >> Если я не ошибаюсь, то нет смысла использовать dataready, если есть
> >> httpready. Они про одно и тоже, только второй ещё проверяет, что
> >> пришедшие данные похожи на HTTP.
> >> 
> 
> > Тем не менее, сабж очень неприятный - лавинообразный рост мелких пакетов.
> > Хотелось бы выяснить, в этом виноват nginx или модули accf_http+accf_data ?
> 
> Оставьте один фильтр httpready и весь мусор, не похожий на HTTP до
> nginx-а не будет доходить.

Нет, фильтр httpready - пропускает всё, что не похоже на 
http (если совсем точно - на GET или HEAD-запрос).  Его 
предназначение - дождаться, пока клиент пришлёт запрос полностью, 
тем самым по возможности уменьшив количество соединений в 
приложении.  Но никаким отсечением чего-либо некорректного он не 
занимается.

-- 
Maxim Dounin
http://nginx.org/



Подробная информация о списке рассылки nginx-ru