Re: Feature request: limit conn не хватает опции сброса соединения

Валентин Бартенев ne на vbart.ru
Чт Дек 1 06:58:15 UTC 2011


On Thursday 01 December 2011 07:47:51 INF[SZ] wrote:
> Суть проблемы.
> 
> При срабатывании limit_conn в nginx клиенту
> отдается 503 ошибка, но соединения
> продолжают висеть в conntrack табице ОС.
> 
> Таким образом даже при настроенных
> параметрах limit_conn единственный клиент с
> помощью например ab может исчерпать всю
> таблицу conntrack соединений.

Более того в limit_conn не учитываются висящие keep-alive соединения.

Модуль нужен для ограничения числа одновременно обрабатываемых запросов к 
конкретному ресурсу. Пассивно висящие соединения он не учитывал и не может 
учитывать.

> Предлагаю сделать параметр  limit_conn_action с
> двумя возможными значениями:
> 
> Действие error (по умолчанию) - выдает
> стандартную 503 (Service Temporarily Unavailable)
> 
> Действие drop - сбрасывает TCP сессию с
> клиентом на которой произошло
> срабатывание limit_conn.

Если я не ошибаюсь, вы и так можете это сделать с помощью директивы
error_page 503 =444; , но как я уже написал выше, это вас не защитит.

--
Валентин Бартенев


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