Уважаемые разработчики!
Мы используем на сайте ограничение на количество одновременных соединений с одного IP со следующим конфигом:
limit_conn_zone $binary_remote_addr zone=addr:64m;
limit_conn addr 20;
limit_conn_log_level warn;
Все работало отлично, но некоторое время назад мы с удивлением обнаружили, что бекенд обрабатывает более 500 запросов с одного IP.
В результате анализа выяснилось, что какой-то смышленный малый создает большое количество соединений и сразу же их рвет. В результате nginx успевает передать запрос на бекенд, но т.к. пользователь сразу же рвет соединение и создает новые, то ограничение на количество запросов не срабатывает.
Я понимаю, что с точки зрения nginx тут все чисто, т.к. он считает только открытые соединения со стороны клиента, но если подумать, то limit_conn все таки используется администраторами как средство ограничения кол-ва одновременных запросов на бекенд, т.к. большое кол-во запросов на к самому Nginx совсем не проблема.
Не могли бы вы реализовать ограничение количества одновременных запросов с одного IP на бекенд, т.к. текущий функционал limit_conn тут не помогает?
Спасибо,
Антон.