La limitación de tasa es un control de seguridad fundamental que restringe cuántas solicitudes un usuario o IP puede hacer en un período de tiempo dado. Es esencial para prevenir abuso.
¿Qué es la Limitación de Tasa?
La limitación de tasa controla el número de solicitudes que un cliente puede hacer a tu servicio dentro de una ventana de tiempo especificada. Esto previene que el abuso abrume tus recursos.
La limitación de tasa efectiva equilibra seguridad (bloquear ataques) con usabilidad (no bloquear usuarios legítimos).
Estrategias de Limitación de Tasa
Ventana Fija
Cuenta solicitudes en intervalos de tiempo fijos (ej., 100 solicitudes por minuto). Simple pero puede permitir ráfagas en los límites de ventana.
Ventana Deslizante
Suaviza las asignaciones de solicitudes con el tiempo, previniendo abuso en límites.
Token Bucket
Permite ráfagas mientras mantiene una tasa promedio a largo plazo. Bueno para APIs con patrones de uso variables.
Mejores Prácticas de Implementación
- Capas de Límites de Tasa - Aplica diferentes límites a niveles de red, aplicación y usuario
- Ajustar por Reputación - Límites más estrictos para IPs con puntuaciones de reputación pobres
- Retornar Headers Apropiados - Incluye headers retry-after y remaining-requests para clientes legítimos
Mejorar Limitación de Tasa con Reputación
Usa la API de Fraudcache para aplicar límites más estrictos a IPs sospechosas.