Welcome! Log In Create A New Profile

Advanced

Ограничение балкового скачивания при помощи nginx/limit_req

Alexey Morozov
December 25, 2009 02:20AM
Здравствуйте!

Пытаюсь вот тут организовать "по-быстрому" ограничения на объём скачиваемых
данных для одного клиента. Возникло несколько практических и, м-м-м, пока
теоретических запросов.

Вопрос практический: какова семантика параметра burst в limit_req ?
Хочется, чтобы клиент мог бы прислать сразу пачку запросов (ну, порядка
50-60), чтобы у него быстро отрендерилась [видимая часть] странички, а потом
сделать так, чтобы он эту страничку некоторое время "читал", может быть,
подгружая по мере необходимости требуемые куски, но с меньшей интенсивностью,
суммарно где-то примерно 500-600 запросов в минуту. Вероятно, из-за того, что
я не понимаю, как именно работает пара rate/burst, у меня либо образуются
недопустимые тормоза на этапе начального скачивания, либо, фактически, нет
никакого ограничения на объём вытащенных данных (и, соответственно, нагрузку
сервера одним клиентом).

Второй вопрос: целесообразно ли использовать $uid_got в качестве "$переменной"
для отслеживания активности именно пользователей, а не IP-адресов -- в наше
неспокойное время NAT стал скорее правилом, нежели исключением, и рубить с
плеча всех пользователей с данного адреса было бы несправедливо, хотя,
возможно, и необходимо. Какой размер хранилища при этом лучше ставить,
насколько сильно оно будет тормозить по сравнению с $binary_remote_addr и что
будет происходить, когда хранилище исчерпано?

Есть ли возможность соотносить данные по количеству запросов от клиента на
нескольких фронтендных nginx'ах?

Может быть, в природе уже существуют лучшие решения для данной задачи,
возможно, заброшенные и/или неофициальные?

Заранее спасибо,
Алексей Морозов

_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://nginx.org/mailman/listinfo/nginx-ru
Subject Author Posted

Ограничение балкового скачивания при помощи nginx/limit_req

Alexey Morozov December 25, 2009 02:20AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 192
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready