Contacta con nosotros

Temario del curso

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

  • Introducción a EDA
    • ¿Qué es la Arquitectura Impulsada por Eventos?
    • Comparación de sistemas monolíticos, de microservicios e impulsados por eventos.
    • Cómo el modelo de concurrencia de Go y las goroutines ligeras lo hacen ideal para EDA.
  • Conceptos clave 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 compensaciones en EDA
    • Visión general de consistencia, disponibilidad y tolerancia a particiones.
    • Impacto de EDA en estas propiedades.
    • Estrategias para equilibrar la consistencia y la disponibilidad en sistemas basados en Go.

Día 2: Eventos, mensajes y patrones de comunicación en Go

  • Comprensión de los tipos de eventos
    • Eventos de dominio vs. eventos de integración.
    • Eventos síncronos asíncronos en aplicaciones Go.
  • Patrones de mensajería en la práctica
    • Publicar/Suscribirse (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
    • Visión general de las bibliotecas y marcos de trabajo de Go populares para mensajería.
    • Ejemplos de código: despacho y procesamiento de eventos utilizando patrones idiomáticos de Go.
    • Sesión práctica: construcción de un servicio básico impulsado por eventos en Go.

Día 3: Sistemas de mensajería y brokers de eventos con Go

  • Selección e integración de brokers de eventos
    • Visión general de brokers 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 de Docker Compose para Kafka, RabbitMQ o NATS.
    • Configuración de temas, intercambios, colas y canales.
    • Visión 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 broker de eventos elegido.
    • Depuración y prueba de flujos de eventos.

Día 4: Implementación, monitoreo y temas avanzados en EDA con Go

  • Implementación de aplicaciones impulsadas por eventos en Go en Kubernetes
    • Contenerización de aplicaciones Go para producción.
    • Implementación de Kafka (u otros brokers) en clústeres de Kubernetes.
    • Introducción a KEDA (Autoscaling impulsado por eventos de Kubernetes) para escalar consumidores de eventos.
  • Manejo de errores y monitoreo
    • Manejo de fallos de eventos con estrategias.
    • Implementación de la observabilidad en servicios Go.
  • Temas avanzados y preguntas y respuestas
    • Exploración de arquitecturas impulsadas por eventos sin servidor con Go.
    • Coreografí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 y resolución interactiva de problemas.

Requerimientos

  • Competencia en Go (Golang), incluyendo el uso de goroutines y canales.
  • Comprensión básica de modelos de arquitectura de software como monolitos y microservicios.
  • Conocimiento de Docker y Docker Compose.
  • Conocimiento básico 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 crean aplicaciones escalables e impulsadas por eventos.
  • Ingenieros de software que transicionan de arquitecturas monolíticas o basadas en REST a sistemas asíncronos.
  • Ingenieros DevOps y de nube que trabajan con microservicios contenerizados 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

Testimonios (7)

Próximos cursos

Categorías Relacionadas