rate-limiting
Installation
SKILL.md
Rate Limiting (Symfony)
Use when
- Capping how often a caller may reach an endpoint: login, password reset, public API, any public write.
- Choosing between sliding window, token bucket and fixed window.
- Applying a limiter by controller attribute, in a service, or globally through an event subscriber.
- Returning a correct 429 with
Retry-After. - Blocking until a token frees up, rather than refusing outright.
Default workflow
- Name what is limited and what identifies the caller.
- Pick the algorithm the traffic shape calls for, and state the rate and the burst.
- Declare the policy under
framework.rate_limiter, one entry per limiter. - Apply it where the request is refused, and answer 429 with
Retry-After. - Prove the limit under test: the call that passes, the one refused, the reset.