Skills que aprenderás
Convocatorias
No hay convocatorias abiertas ahora mismo, pero no te pierdas la oportunidad: guarda este curso y te avisamos en cuanto se abra una convocatoria.
Recursos
No hay recursos disponibles todavía para esta convocatoria
Este curso está dirigido a ingenieros de software con experiencia previa en arquitecturas de microservicios que buscan dominar los patrones y técnicas más exigentes del diseño distribuido. A lo largo de 22 horas, los participantes profundizarán en los fundamentos de la arquitectura orientada a eventos con Redis Streams, los patrones de consistencia distribuida como Saga y CQRS, la observabilidad avanzada mediante trazas distribuidas y definición de SLOs, la seguridad entre servicios más allá del API gateway, y las estrategias de despliegue sin downtime. Al finalizar, el alumno será capaz de diseñar, implementar y operar sistemas de microservicios complejos con garantías verificables de resiliencia, coherencia de datos, seguridad y disponibilidad en entornos de producción.
Arquitectura orientada a eventos con Redis Streams Se estudian los fundamentos del paradigma event-driven y los dos patrones de evento fundamentales: event notification, donde el evento señala que algo ocurrió sin transportar estado completo, y event-carried state transfer, donde el evento lleva toda la información necesaria para que el consumidor actúe sin consultar al emisor. Se profundiza en la estructura de Redis Streams, la configuración de consumer groups independientes por servicio y los mecanismos de acknowledgement que garantizan la tolerancia al reinicio sin pérdida de mensajes. Los participantes diseñan e implementan un sistema de tres servicios completamente desacoplados temporalmente y verifican su comportamiento ante caídas y reinicios.
Consistencia distribuida: Saga y CQRS Este bloque aborda los dos grandes patrones de gestión de consistencia en sistemas distribuidos. Se analiza el patrón Saga en su variante de coreografía, donde cada servicio reacciona a eventos y emite los suyos propios sin orquestador central; se implementa una transacción de tres pasos con sus correspondientes acciones de compensación y se valida mediante tests que las compensaciones se ejecutan correctamente ante fallos intermedios. A continuación se estudia CQRS como separación explícita entre el modelo de escritura y el de lectura: se diseñan proyecciones de lectura actualizadas de forma asíncrona a través de eventos y se analiza con rigor en qué contextos de negocio la consistencia eventual derivada es admisible y en cuáles constituye un riesgo inaceptable.
Observabilidad avanzada: trazas distribuidas y SLOs Se trabajan las dos dimensiones clave de la observabilidad en producción. En la parte de trazabilidad, los participantes instrumentan la propagación de correlation IDs end-to-end a través de peticiones HTTP y eventos Redis Streams en un sistema de tres servicios, de modo que cualquier petición fallida sea diagnosticable buscando por ese identificador en los logs centralizados, desde el API gateway hasta el servicio que introdujo el error. En la parte de SLOs, se define formalmente la disponibilidad P99, la latencia P95 por servicio y la tasa de error end-to-end, y se implementan las métricas con Prometheus y los dashboards y alertas en Grafana necesarios para monitorizar el cumplimiento de esos objetivos en tiempo real.
Seguridad entre servicios Se examina la limitación de confiar únicamente en el API gateway para la validación de tokens y se diseña una estrategia de seguridad de defensa en profundidad. Cada servicio receptor valida el JWT de forma independiente, se define una lista explícita de servicios autorizados por endpoint y se verifica mediante tests automatizados que las peticiones con token inválido, expirado o provenientes de un servicio no autorizado son rechazadas de forma consistente en todos los niveles de la arquitectura.
Despliegue sin downtime: blue-green Se estudia la estrategia de despliegue blue-green como mecanismo para actualizar microservicios en producción sin interrupciones de servicio. Los participantes implementan la lógica de routing entre las versiones activa y nueva, verifican que las peticiones en vuelo se completan íntegramente en la versión anterior antes de que el tráfico migre a la nueva, y demuestran mediante tests de integración que durante el proceso de switch no se producen errores, respuestas inconsistentes ni pérdida de datos.
redis/redis-stack) ejecutable mediante Docker.