Qué es Patrón de Reintento
Reintentar en caso de fallos
Patrón de Reintento es un patrón de diseño para manejar fallos transitorios mediante el reintento automático de operaciones fallidas.
Cuándo usar
- Errores de red temporales
- Timeouts al llamar servicios externos
- Errores de conexión a base de datos
- Sobrecarga de API (429 Too Many Requests)
- Indisponibilidad temporal del servicio
Estrategias de reintento
- Reintento inmediato — sin demora
- Demora fija — intervalos iguales
- Demora lineal — incremento por constante
- Backoff exponencial — duplicación del tiempo
- Jitter — agregar aleatoriedad
Parámetros clave
- Número máximo de intentos
- Demora inicial
- Demora máxima
- Multiplicador de backoff
- Lista de errores reintentables
Mejores prácticas
- Registrar todos los intentos de reintento
- Usar Circuit Breaker conjuntamente
- Limitar número de intentos
- Agregar jitter para distribuir carga
- Considerar idempotencia de operaciones