Programa del Curso

Día 1: Fundamentos de la Arquitectura Orientada a Eventos en Go

  • Introducción a EDA
    • ¿Qué es una Arquitectura Orientada a Eventos?
    • Comparación entre Sistemas Monolíticos, Microservices y Orientados a Eventos
    • Cómo el modelo de concurrencia y los goroutines livianos de Go lo hacen ideal para EDA
  • Conceptos Básicos y Beneficios
    • Desacoplamiento, escalabilidad y resiliencia en sistemas empresariales
    • Definición de Eventos, Productores, Consumidores y Brokers de Eventos
    • Ejemplos del mundo real y estudios de caso donde Go impulsa sistemas de eventos de alto rendimiento
  • Teorema CAP y Compromisos en EDA
    • Resumen sobre Consistencia, Disponibilidad y Tolerancia a Particiones
    • Impacto de EDA en estas propiedades
    • Estrategias para equilibrar consistencia y disponibilidad en sistemas basados en Go

Día 2: Eventos, Mensajes y Patrones de Communication en Go

  • Comprendiendo los Tipos de Eventos
    • Eventos del Dominio vs. Eventos de Integración
    • Eventos Sincrónicos vs. Asincrónicos en aplicaciones Go
  • Patrónes de Mensajería en Práctica
    • Publish-Subscribe (Pub/Sub) en Go 
    • Cómo diseñar y estructurar los cargas de eventos usando JSON, Protocol Buffers o Avro en Go
  • Implementación del Manejo de Eventos en Go
    • Resumen de bibliotecas y marcos populares para mensajería en Go 
    • Ejemplos de código: despacho y procesamiento de eventos usando patrones idiomáticos de Go
    • Sesión práctica: Creando un servicio orientado a eventos simple en Go

Día 3: Sistemas de Mensajería y Brokers de Eventos con Go

  • Selección e Integración de Brokers de Eventos
    • Resumen de brokers populares: Apache Kafka, RabbitMQ y NATS
    • Comparación de casos de uso y mejores prácticas para sistemas basados en Go
  • Configurando la Infraestructura de Mensajería
    • Configuración de Docker Compose para Kafka, RabbitMQ o NATS
    • Configuración de temas, intercambios, colas y canales
    • Resumen de bibliotecas cliente de Go
  • Taller Práctico
    • Creando un microservicio de muestra en Go que produce y consume eventos
    • Integración del servicio con el broker de eventos elegido
    • Depuración y prueba de flujos de eventos

Día 4: Implementación, Monitoreo y Temas Avanzados en Go EDA

  • Implementación de Aplicaciones Orientadas a Eventos de Go en Kubernetes
    • Contenedorización de aplicaciones Go para producción
    • Implementación de Kafka (u otros brokers) en clústeres Kubernetes
    • Introducción a KEDA (Kubernetes Event-Driven Autoscaling) para escalar consumidores de eventos
  • Gestión de Errores y Monitoreo
    • Gestionar fallos de eventos con estrategias 
    • Implementación de observabilidad en servicios Go
  • Temas Avanzados y Preguntas y Respuestas
    • Explorando Arquitecturas Servless Orientadas a Eventos con Go
    • Choreografía vs. Orquestación de Eventos: Casos de uso y consideraciones de diseño
    • Pitfalls comunes, lecciones aprendidas y mejores prácticas
    • Sesión abierta de preguntas y respuestas e interactividad en la solución de problemas

 


Requerimientos

Go (Golang) habilidades de programación, incluyendo concurrencia (goroutines, canales)
Comprensión básica de la arquitectura de software (monolitos, microservicios)
Familiaridad con Docker y Docker Compose
Conocimientos básicos de APIs REST y redes
Experiencia en el uso de herramientas CLI e Git
Opcional: Exposición a Kubernetes y sistemas de mensajería (Kafka, RabbitMQ, NATS)
 
 28 Horas

Número de participantes


Precio por Participante​

Testimonios (7)

Próximos cursos

Categorías Relacionadas