Rate limiter ограничивает кол-во запросов для каждого пользователя в минуту.
Используется алгоритм Token bucket
- Каждый пользователь может совершить не более N запросов в минуту к endpoint-у
- Все N запросов могут быть обработаны одновременно, без задержки
- Для каждого endpoint-а можно установить индивидуальный rate limit
- Клонировать проект
- Установить зависимости
poetry install
- Запустить Redis
docker-compose up -d
- В папке src/use_case создать .env файл (образец в src/use_case/.env_example)
- Стартовать FastAPI src/use_case/http_server.py
После этого можно запустить демонстрационный файл src/use_case/ddos_script.py