El rate limiting protege al server de demasiados requests; el HTTP caching evita repetir trabajo para requests que ya ha respondido. Ambos están estandarizados en HTTP y ambos son esenciales para una API en producción a escala.
Rate limiting
El server limita cuántos requests puede hacer un client por ventana y devuelve 429 Too Many Requests cuando se excede. Anuncia los límites vía cabeceras para que un client bien educado pueda autolimitarse:
HTTP/1.1 200 OK
RateLimit-Limit: 100
RateLimit-Remaining: 12
RateLimit-Reset: 30
