Рейтинг:0

Различать и ограничивать пропускную способность nginx для скачивания, контента веб-сайта

флаг br

Возможно ли (без дополнительных инструментов или добавления другой системы распространения) ограничить пропускную способность всех подключений для загрузки (загрузка на одноранговые узлы, которые запросили загрузку файла), чтобы они не перегружали интерфейс и, таким образом, не замедляли скорость отклика веб-сайта, например. разрешить максимум 800 Мбит/с для загрузки, чтобы каждый раз теоретически оставалось 200 Мбит/с для обслуживания общего (веб-сайта) контента?

Единственное, что пришло мне в голову при просмотре документов nginx, это https://docs.nginx.com/nginx/admin-guide/security-controls/controlling-access-proxyed-http/ но это только для (а) одноранговых соединений, а не общего ограничения скорости и (б) соединений в целом, без различия между типами обслуживания.

Я предполагаю, что нужно будет реализовать определенный тип подключения для файлов, которые будут загружаться посетителем, например, используя для этого отдельное определение блока сервера. Таким образом, загрузки могут регулироваться ограничением скорости, не влияя при этом на «нормальное» обслуживание контента, но это по-прежнему ограничено описанным выше методом, который устанавливает ограничение только для каждого IP-адреса.

Любые подсказки, как это обычно решается, не просто бросая мне услуги CDN?

djdomi avatar
флаг za
Отвечает ли это на ваш вопрос? [дросселировать пропускную способность nginx для каждого веб-сайта] (https://serverfault.com/questions/558148/throttle-nginx-bandwidth-per-website)
djdomi avatar
флаг za
Тем не менее, документ, о котором вы говорите, является правильным способом решения этой проблемы, так в чем проблема?
loopend avatar
флаг br
Как уже говорилось, мне интересно, каким будет самый простой способ различать (а) загрузки веб-сайта и (б) обычный трафик контента (сами веб-страницы), даже если они находятся на одном и том же порту подключения (443) и для одного и того же IP-адреса на пользователь. Без этой дифференциации rate_limit не помогает предотвратить перегрузку интерфейса большим количеством одновременных больших загрузок, которые могут замедлить скорость отклика веб-сайта.
djdomi avatar
флаг za
Я бы предложил использовать подкаталог для идентификации загрузки

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.