Rate limits protect availability for everyone else. One client in a retry loop can consume the capacity an entire service depends on, and without a limit the first sign is an outage affecting unrelated customers. With one, that client degrades and the rest are unaffected.
Good limiting communicates rather than just refuses. Returning a `Retry-After` header and headers describing the remaining quota lets a well-behaved client back off correctly instead of retrying immediately and compounding the problem. Limits should also be per-client rather than global, so one heavy user cannot exhaust the shared allowance.
Codazz builds this in production — API & Backend Development.