Можно ограничить скорость, используя ограничение скорости в определенном месте.
Однако как мы можем делать это динамически?
Допустим, у вас есть платные и неоплачиваемые пользователи, и вы хотите предоставить более высокую пропускную способность платным пользователям.
Нам нужно будет динамически проверять базу данных и разрешить определенную скорость для этой конкретной группы пользователей.
Вы имеете в виду какой-нибудь модуль nginx?
Да, вы можете ограничить количество просмотров в определенном месте.
location /something/ {
set $limit_rate 4k;
}
Вы также можете окружить limite_rate такими операторами, как if, чтобы динамически контролировать ставки. См. Эту ссылку для получения дополнительной информации о предельной ставке: http://wiki.nginx.org/NginxHttpCoreModule#limit_rate
Есть еще один модуль, о котором вам следует помнить: http://wiki.nginx.org/NginxHttpLimitZoneModule
Этот модуль позволяет вам устанавливать ограничения на количество подключений. Таким образом, даже если вы установите низкий лимит, если они могут сделать всего 10 подключений, ваш лимит будет бессмысленным.
Я предлагаю, чтобы частные и общедоступные пользователи получали разные ссылки, чтобы nginx мог легко различать типы пользователей и проверять безопасность на уровне приложения.