Contacta con nosotros

Temario del curso

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

  • Introducción a EDA
    • ¿Qué es la Arquitectura Dirigida por Eventos?
    • Comparación entre sistemas Monolíticos, de Microservicios y Dirigidos por Eventos
    • Cómo el modelo de concurrencia de Go y las gorutinas ligeras lo hacen ideal para EDA
  • Conceptos clave y beneficios
    • Desacoplamiento, escalabilidad y resiliencia en sistemas empresariales
    • Definición de Eventos, Productores, Consumidores e intermediarios de eventos (Event Brokers)
    • Ejemplos del mundo real y estudios de casos donde Go potencia sistemas de eventos de alto rendimiento
  • Teorema CAP y compensaciones en EDA
    • Vista general de Coherencia, Disponibilidad y Tolerancia a particiones
    • Impacto de EDA en estas propiedades
    • Estrategias para equilibrar la coherencia y la disponibilidad en sistemas basados en Go

Día 2: Eventos, Mensajes y Patrones de Comunicación en Go

  • Comprensión de tipos de eventos
    • Eventos de dominio vs. Eventos de integración
    • Eventos síncronos vs. asíncronos en aplicaciones Go
  • Patrones de mensajería en la práctica
    • Publish-Subscribe (Pub/Sub) en Go
    • Cómo diseñar y estructurar cargas útiles de eventos utilizando JSON, Protocol Buffers o Avro en Go
  • Implementación del manejo de eventos en Go
    • Vista general de las bibliotecas y marcos de trabajo populares para mensajería en Go
    • Ejemplos de código: envío y procesamiento de eventos utilizando patrones idiomáticos de Go
    • Sesión práctica: Construcción de un servicio simple dirigido por eventos en Go

Día 3: Sistemas de Mensajería e Intermediarios de Eventos con Go

  • Selección e integración de intermediarios de eventos
    • Vista general de intermediarios populares: Apache Kafka, RabbitMQ y NATS
    • Comparación de casos de uso y mejores prácticas para sistemas basados en Go
  • Configuración de la infraestructura de mensajería
    • Configuración con Docker Compose para Kafka, RabbitMQ o NATS
    • Configuración de temas (topics), intercambios (exchanges), colas y canales
    • Vista general de las bibliotecas cliente de Go
  • Taller práctico
    • Construcción de un microservicio de ejemplo en Go que produce y consume eventos
    • Integración del servicio con el intermediario de eventos elegido
    • Depuración y prueba de los flujos de eventos

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

  • Implementación de aplicaciones dirigidas por eventos en Go sobre Kubernetes
    • Contenerización de aplicaciones Go para producción
    • Implementación de Kafka (u otros intermediarios) en clústeres de Kubernetes
    • Introducción a KEDA (Kubernetes Event-Driven Autoscaling) para escalar consumidores de eventos
  • Manejo de errores y monitoreo
    • Gestión de fallos de eventos mediante estrategias adecuadas
    • Implementación de observabilidad en servicios Go
  • Temas avanzados y preguntas y respuestas
    • Exploración de arquitecturas serverless dirigidas por eventos con Go
    • Coreografía de eventos vs. Orquestación: casos de uso y consideraciones de diseño
    • Pitfalls comunes, lecciones aprendidas y mejores prácticas
    • Sesión abierta de preguntas y respuestas y solución interactiva de problemas

Requerimientos

  • Dominio de Go (Golang), incluyendo el uso de gorutinas y canales
  • Conocimiento básico de modelos de arquitectura de software como monolitos y microservicios
  • Familiaridad con Docker y Docker Compose
  • Conocimientos básicos de APIs REST y conceptos de redes
  • Experiencia con herramientas de línea de comandos y Git
  • Opcional pero útil: exposición previa a Kubernetes y sistemas de mensajería como Kafka, RabbitMQ o NATS

Público objetivo

  • Desarrolladores de Go que construyen aplicaciones escalables y dirigidas por eventos
  • Ingenieros de software que transicionan desde arquitecturas monolíticas o basadas en REST hacia sistemas asíncronos
  • Ingenieros DevOps y cloud que trabajan con microservicios contenedores o distribuidos
  • Arquitectos técnicos y diseñadores de sistemas que exploran patrones de EDA utilizando Go
 28 Horas

Número de participantes


Precio por participante

Reseñas (7)

Próximos cursos

Categorías Relacionadas