template-saas/docs/97-adr/adr/ADR-011-rate-limiting-strategy.md
Adrian Flores Cortes 806612a4db
Some checks are pending
CI / Backend CI (push) Waiting to run
CI / Frontend CI (push) Waiting to run
CI / Security Scan (push) Waiting to run
CI / CI Summary (push) Blocked by required conditions
[REESTRUCTURA-DOCS] refactor: Corregir estructura docs/ segun SIMCO-DOCUMENTACION-PROYECTO
- Renombrar 02-integraciones/ → 03-integraciones/ (resolver prefijo duplicado)
- Renombrar 02-devops/ → 04-devops/ (resolver prefijo duplicado)
- Renombrar architecture/ → 97-adr/ (agregar prefijo numerico)
- Actualizar _MAP.md con nueva estructura y version 2.1.0

Estructura final:
- 00-vision-general/
- 01-modulos/
- 02-especificaciones/
- 03-integraciones/
- 04-devops/
- 97-adr/

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-24 20:34:14 -06:00

1.2 KiB

id title type status priority supersedes superseded_by version created_date updated_date
ADR-011 Rate Limiting Strategy ADR Accepted P0 N/A N/A 1.0.0 2026-01-10 2026-01-10

ADR-011: Rate Limiting Strategy

Metadata

Campo Valor
ID ADR-011
Estado Accepted
Fecha 2026-01-10
Supersede N/A

Contexto

Se necesita rate limiting para proteger la API de abuso y garantizar fair use entre tenants.

Decision

Implementar Token Bucket con Redis, con limites diferenciados por tenant/plan.

Implementacion

// Limites por plan
const rateLimits = {
  free: { requests: 100, window: '1h' },
  basic: { requests: 1000, window: '1h' },
  pro: { requests: 10000, window: '1h' },
  enterprise: { requests: -1 } // Ilimitado
};

Algoritmo Token Bucket

  • Permite burst legitimo (hasta 10% del limite)
  • Recarga continua de tokens
  • Distribuido via Redis

Consecuencias

Positivas

  • Burst legitimo permitido
  • Limites justos por plan
  • Distribuido via Redis

Negativas

  • Dependencia de Redis
  • Configuracion por endpoint

Fecha decision: 2026-01-10 Autores: Claude Code (Arquitectura)