Как использовать троттлинг в графене-джанго? - PullRequest
0 голосов
/ 03 мая 2019

Как я могу регулировать запросы в графене-джанго? Есть ли какой-нибудь пакет, который можно использовать в графене-джанго для регулирования запросов.

1 Ответ

0 голосов
/ 06 мая 2019

Один из вариантов - настроить ваш запрос на веб-сервере и оставить в нем django и графен. Например, если вы используете nginx и uwsgi, и ваша конечная точка графена равна /api, вы можете добавить это в свою конфигурацию nginx:

location = /api/ {
    limit_rate_after 500k;
    limit_rate 50k;
    uwsgi_pass  django;
    include     /path/to/uwsgi_params;
}

что дроссель запросов больше, чем 500k. Nginx имеет другие параметры конфигурации для ограничения в зависимости от клиента - см. https://www.nginx.com/blog/rate-limiting-nginx/ и https://docs.nginx.com/nginx/admin-guide/security-controls/controlling-access-proxied-http/#limit_rate

Очень просто реализовать, но если вам нужно регулировать на основе одного клиента, использующего несколько клиентов, этот подход не будет работать.

...