Поставим Кордон перед тестовым сервисом и защитим один эндпоинт от всплесков — на все 10 минут.
Кордон — локальный прокси-страж: он принимает трафик вашего приложения и решает «пропустить / ограничить», не требуя правок кода. Лимиты считаются по ключу (IP, токен, произвольное поле запроса).
rules:
- match: {path: "/api/search"}
key: header Authorization
limit: 20/min
burst: 40
action: 429
Правило читается так: на эндпоинт поиска — не более 20 запросов в минуту на
каждый уникальный Authorization, всплеск до 40.
$ for i in $(seq 1 45); do curl -s -o /dev/null -w "%{http_code}
" \
-H "Authorization: Bearer test" localhost:8080/api/search; done | uniq -c
40 200
5 429