StackPractices

Etiqueta: resilience

Explora 25 recursos prácticos de ingeniería de software etiquetados con "resilience". Descubre recetas de código, patrones de diseño, plantillas de documentación y guías detalladas para ayudarte a construir, desplegar y mantener soluciones listas para producción con resilience.

Patrones de Resiliencia

La resiliencia es la capacidad de un sistema de recuperarse de fallas y seguir operando. Se construye con reintentos, circuit breakers, bulkheads, fallbacks y degradacion gradual en lugar de una tecnica unica.

Los patrones y recetas a continuacion cubren circuit breakers, timeouts, reintentos con backoff, bulkheads, load shedding y failover. Cada recurso muestra como limitar el radio de explosion y proteger a los usuarios de fallas en cascada.

Cada recurso incluye explicaciones claras, ejemplos de codigo y advertencias sobre errores comunes. Usa estos materiales para tomar decisiones informadas, evitar problemas en produccion y acelerar tu flujo de trabajo. Si estas empezando, lee primero los articulos marcados como principiante; si ya tienes experiencia, ve directo a los patrones avanzados y las guias de arquitectura.

Retry Backoff: Budgets, Deadlines y Config de Librerías

Implementa estrategias de retry resilientes con exponential backoff, jitter e integración de...

Ingenieria del caos

Construye sistemas resilientes inyectando fallas intencionalmente y observando cómo responden y se...

Retry con Backoff Exponencial

Cómo implementar lógica de retry resiliente con backoff exponencial y jitter para fallos...

Colas de mensajes fallidos (DLQ) en SQS, RabbitMQ y Kafka

Configura dead letter queues en SQS, RabbitMQ y Kafka: políticas de reenvío, límites de reintentos,...

Patrón LLM Fallback

Recurre a proveedores o modelos LLM alternativos cuando el primario falla. Maneja rate limits,...

Patrón Back-Pressure

Previene que sistemas upstream abrumen a consumidores downstream propagando señales de control de...

Patrón Circuit Breaker en Python, JavaScript y Java

Previene fallos en cascada deteniendo solicitudes a servicios que están fallando. Un patrón...

Patrón Compensating Transaction

Deshace los efectos de una transacción completada ejecutando una operación contraria, habilitando...

Patrón Graceful Degradation

Degradar funcionalidad en lugar de fallar cuando dependencias no estan disponibles. Servir...

Patrón Retry

Reintenta una operación que ha fallado con errores transitorios, usando estrategias configurables...

Patron de Programador-Agente-Supervisor

Coordina la programacion de trabajos resilientes con un supervisor que monitorea agentes, reinicia...

Patrón Shed Load

Rechazar requests proactivamente bajo carga extrema para proteger el sistema. Descartar trafico...

Patrón Timeout

Evita que las operaciones se cuelguen indefinidamente imponiendo un tiempo máximo de ejecución. Un...

Circuit Breaker con Monitoring

Cómo exponer circuit breaker state como métricas para observability. Cubre Prometheus integration,...

Patrón Bulkhead: Aísla Recursos y Limita el Radio de Impacto

Cómo aislar recursos por servicio para limitar el radio de impacto. Cubre aislamiento de thread...

Patrón Circuit Breaker Half-Open

Cómo probar la recuperación de servicios con el estado half-open del circuit breaker. Cubre closed,...

Patrón Failover: Conmuta a Standby ante Fallo del Primario

Cómo desviar el tráfico a un sistema standby cuando el primario falla. Cubre active-passive,...

Patrón Graceful Shutdown: Drenar Peticiones antes de Salir

Cómo drenar las peticiones en curso antes de que el proceso salga: señales, health check, draining...

Patrón Token Bucket: Rate Limiting con Ráfagas Controladas

Cómo implementar rate limiting con token bucket para protección de APIs — refill del bucket, manejo...

Patrón Retry with Jitter

Cómo retryar failed operations con exponential backoff y random jitter. Cubre full jitter, equal...