Envíanos tu consulta
Términos y condiciones *
logoImagina
Formación
Modalidades
Próximas Convocatorias
Temario
FAQ
Solicitar información
iconoCurso

Curso de EDA - Arquitectura Orientada a Eventos

DISPONIBLE EN MODALIDAD:
aMedidaIcon
Aula Virtual Personalizada
arrowRightDark

En este curso, exploraremos los fundamentos de la Arquitectura Orientada a Eventos (EDA), una metodología clave para el diseño de sistemas distribuidos escalables y resilientes. A través de estudios de caso y ejemplos prácticos, aprenderás a modelar eventos, implementar productores y consumidores, y utilizar brokers de mensajes como Kafka y RabbitMQ. Además, profundizaremos en técnicas avanzadas como event sourcing, event streaming, y la consistencia eventual, terminando con un proyecto final que integrará todos estos conceptos en una solución empresarial real.

iconClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClient

Formación en EDA - Arquitectura Orientada a Eventos bonificable para empresas

A quién va dirigido nuestro curso de EDA - Arquitectura Orientada a Eventos

Arquitectos de software, desarrolladores y profesionales interesados en crear sistemas distribuidos escalables y resilientes.

Objetivos de nuestro curso de EDA - Arquitectura Orientada a Eventos

  • Comprender los principios fundamentales de la arquitectura orientada a eventos.
  • Diseñar e implementar sistemas basados en eventos con Kafka y RabbitMQ.
  • Aplicar técnicas de **event sourcing** y **event streaming** en sistemas distribuidos.
  • Garantizar la **consistencia eventual** y la tolerancia a fallos en sistemas EDA.
  • Desarrollar un proyecto final que integre todos los componentes de una arquitectura EDA.

Qué vas a aprender en nuestro curso de EDA - Arquitectura Orientada a Eventos

En este curso, exploraremos los fundamentos de la Arquitectura Orientada a Eventos (EDA), una metodología clave para el diseño de sistemas distribuidos escalables y resilientes. A través de estudios de caso y ejemplos prácticos, aprenderás a modelar eventos, implementar productores y consumidores, y utilizar brokers de mensajes como Kafka y RabbitMQ. Además, profundizaremos en técnicas avanzadas como event sourcing, event streaming, y la consistencia eventual, terminando con un proyecto final que integrará todos estos conceptos en una solución empresarial real.

Requisitos de nuestro curso de EDA - Arquitectura Orientada a Eventos

  • Experiencia con arquitecturas distribuidas, microservicios y mensajería.
  • Instalaciones previas: Apache Kafka, RabbitMQ, Visual Studio Code, JDK (9 o superior), Python (v3 o superior), Node (LTS) y GIT.
  • Tener un equipo con acceso a un usuario con permisos de instalación, conexión estable a Internet, mínimo 8GB de RAM y mínimo 50GB de memoria en disco libres.

Temario del curso de EDA - Arquitectura Orientada a Eventos

tema 1

Introducción a la Arquitectura Orientada a Eventos

  • Definición de Arquitectura Orientada a Eventos (EDA)
  • Comparación entre EDA y arquitecturas tradicionales (monolítica y SOA)
  • Componentes clave de EDA: eventos, productores y consumidores
  • Tipos de eventos: event sourcing, event notification y event streaming
  • Beneficios de EDA en sistemas distribuidos
  • Desafíos de adoptar EDA en entornos empresariales
  • Casos de uso comunes de EDA: microservicios, IoT, fintech
  • EDA y su relación con la escalabilidad y resiliencia
  • Uso de EDA en entornos de alta disponibilidad
  • Ejemplo práctico: arquitectura orientada a eventos en una aplicación de comercio electrónico
iconArrowDown
tema 2

Eventos: Concepto y Modelado

  • ¿Qué es un evento en EDA?
  • Diferencia entre eventos de datos y eventos de comandos
  • Modelado de eventos en sistemas distribuidos
  • Definición de contratos de eventos: estructura y atributos
  • Enriquecimiento y correlación de eventos
  • Diseño de eventos con alto nivel de cohesión
  • Ejemplo práctico: Modelado de eventos en una plataforma de banca digital
  • Patrones comunes de diseño de eventos
  • Estrategias de versionado de eventos
  • Mejores prácticas para evitar el acoplamiento de eventos
iconArrowDown
tema 3

Productores y Consumidores de Eventos

  • Roles de los productores y consumidores en EDA
  • Tipos de consumidores: síncronos y asíncronos
  • Envío y recepción de eventos: push vs. pull
  • Diseñar productores y consumidores desacoplados
  • Balanceo de carga y escalabilidad en consumidores de eventos
  • Ejemplo práctico: Implementación de productores y consumidores en un sistema de notificaciones
  • Configuración de colas y topics para la gestión de eventos
  • Garantías de entrega: al menos una vez, como máximo una vez, y exactamente una vez
  • Gestión de errores en consumidores de eventos
  • Estrategias para asegurar la entrega de eventos en sistemas distribuidos
iconArrowDown
tema 4

Brokers de Mensajes en EDA

  • Introducción a los brokers de mensajes: función y propósito
  • Principales brokers de mensajes utilizados en EDA: Kafka, RabbitMQ, AWS SNS/SQS
  • Comparativa entre brokers de mensajes populares
  • Implementación de colas y topics en un broker de mensajes
  • Caso práctico: Configuración de Apache Kafka para EDA en una aplicación financiera
  • Garantías de entrega y persistencia en brokers
  • Escalabilidad horizontal en brokers de mensajes
  • Seguridad en la transmisión de eventos a través de brokers
  • Estrategias de monitorización y métricas de brokers
  • Mejores prácticas para la configuración y mantenimiento de brokers
iconArrowDown
tema 5

Event Sourcing: Fundamentos y Aplicaciones

  • Concepto de event sourcing y cómo se relaciona con EDA
  • Diferencias entre event sourcing y almacenamiento de estados
  • Beneficios de event sourcing: auditoría, trazabilidad y reproducción de estados
  • Ejemplo práctico: Implementación de event sourcing en un sistema de gestión de inventarios
  • Almacenamiento de eventos: bases de datos optimizadas para eventos
  • Patrones de event sourcing en microservicios
  • Estrategias de reconstrucción de estados desde eventos históricos
  • Limitaciones y desafíos de event sourcing
  • Mantenimiento del historial de eventos en grandes volúmenes de datos
  • Casos de uso de event sourcing en la industria
iconArrowDown
tema 6

Event Streaming: Procesamiento en Tiempo Real

  • ¿Qué es event streaming y cómo se diferencia del event sourcing?
  • Beneficios de procesar eventos en tiempo real
  • Herramientas de event streaming: Apache Kafka Streams, Apache Flink, AWS Kinesis
  • Ejemplo práctico: Event streaming en tiempo real para detección de fraudes en pagos
  • Patrones comunes de event streaming: filtrado, transformación y agregación
  • Procesamiento de eventos con baja latencia
  • Creación de pipelines de procesamiento de eventos
  • Uso de event streaming en aplicaciones de IoT
  • Monitoreo y mantenimiento de pipelines de streaming en producción
  • Estrategias para la tolerancia a fallos en sistemas de event streaming
iconArrowDown
tema 7

Integración de EDA con Microservicios

  • Relación entre EDA y microservicios
  • Diseño de microservicios basados en eventos
  • Patrones de comunicación entre microservicios utilizando eventos
  • Ejemplo práctico: Desacoplamiento de microservicios mediante eventos en un sistema de pagos
  • Ventajas de usar EDA en microservicios frente a REST y RPC
  • Gestión de transacciones distribuidas en EDA
  • Estrategias para garantizar la consistencia eventual en EDA
  • Aislamiento y resiliencia en sistemas de microservicios orientados a eventos
  • Desafíos de la orquestación de eventos en microservicios
  • Casos de éxito de EDA en arquitecturas de microservicios
iconArrowDown
tema 8

Patrones de Diseño en Arquitectura Orientada a Eventos

  • Introducción a los patrones de diseño en EDA
  • Patrón Publisher-Subscriber (Pub/Sub)
  • Patrón Event-Carried State Transfer
  • Patrón Event-Driven Saga para transacciones distribuidas
  • Ejemplo práctico: Implementación del patrón Saga en una aplicación de comercio electrónico
  • Patrón CQRS (Command Query Responsibility Segregation) con EDA
  • Patrones de retry y compensación en sistemas basados en eventos
  • Patrones de manejo de errores en EDA
  • Implementación de patrones de tolerancia a fallos en EDA
  • Comparativa de patrones de EDA en la industria
iconArrowDown
tema 9

Consistencia Eventual en Sistemas Distribuidos

  • Concepto de consistencia eventual y su importancia en EDA
  • Diferencias entre consistencia fuerte y consistencia eventual
  • Ejemplo práctico: Consistencia eventual en un sistema de logística basado en eventos
  • Garantías de consistencia eventual en brokers de mensajes
  • Patrones de resolución de conflictos en sistemas eventuales
  • Estrategias para asegurar la sincronización de datos en sistemas distribuidos
  • Retos y beneficios de la consistencia eventual en grandes volúmenes de datos
  • Uso de bases de datos distribuidas en EDA
  • Implementación de tolerancia a la latencia en EDA
  • Casos de uso de consistencia eventual en la industria tecnológica
iconArrowDown
tema 10

Monitoreo y Trazabilidad en Arquitecturas Orientadas a Eventos

  • Importancia del monitoreo en sistemas basados en eventos
  • Herramientas de monitoreo de eventos: Prometheus, Grafana, ELK Stack
  • Ejemplo práctico: Monitoreo de eventos en un sistema de pagos digitales
  • Implementación de trazabilidad de eventos en sistemas distribuidos
  • Uso de logs distribuidos para la trazabilidad de eventos
  • Medición de latencia y tiempos de procesamiento en EDA
  • Alertas y notificaciones basadas en eventos
  • Estrategias para identificar cuellos de botella en el procesamiento de eventos
  • Monitoreo de la entrega y el procesamiento de eventos en tiempo real
  • Mejores prácticas para garantizar la disponibilidad y fiabilidad del sistema
iconArrowDown
tema 11

Gestión de Errores y Retries en EDA

  • Tipos de errores comunes en arquitecturas orientadas a eventos
  • Estrategias para gestionar errores en la entrega de eventos
  • Implementación de políticas de retry y backoff exponencial
  • Ejemplo práctico: Gestión de errores en un sistema de pedidos basado en eventos
  • Patrones de compensación en sistemas transaccionales
  • Aislamiento de fallos para evitar la propagación de errores
  • Estrategias para garantizar la integridad de los datos en sistemas basados en eventos
  • Uso de dead-letter queues para eventos fallidos
  • Detección y manejo de duplicados en sistemas de eventos
  • Mejores prácticas para asegurar la fiabilidad en la entrega de eventos
iconArrowDown
tema 12

Seguridad en Arquitecturas Orientadas a Eventos

  • Principales desafíos de seguridad en EDA
  • Protección de datos en tránsito y en reposo
  • Implementación de autenticación y autorización en EDA
  • Ejemplo práctico: Implementación de seguridad en un sistema de facturación basado en eventos
  • Cifrado de mensajes en brokers de eventos
  • Uso de OAuth y JWT para asegurar productores y consumidores
  • Estrategias para prevenir ataques de denegación de servicio (DDoS) en sistemas de eventos
  • Monitoreo de eventos sospechosos para detectar posibles intrusiones
  • Implementación de auditoría de eventos para garantizar el cumplimiento normativo
  • Mejores prácticas de seguridad en arquitecturas distribuidas
iconArrowDown
tema 13

EDA en la Nube: Implementaciones y Servicios

  • Beneficios de usar la nube para EDA
  • Principales servicios en la nube para EDA: AWS EventBridge, Azure Event Grid, Google Cloud Pub/Sub
  • Ejemplo práctico: Implementación de EDA en AWS con EventBridge
  • Escalabilidad automática de eventos en la nube
  • Uso de servicios gestionados para la transmisión y procesamiento de eventos
  • Estrategias para minimizar la latencia en sistemas EDA en la nube
  • Consideraciones de costos al usar servicios en la nube para EDA
  • Gestión de datos y eventos multiregionales en la nube
  • Casos de uso de EDA en la nube en la industria
  • Mejores prácticas para la implementación de EDA en entornos cloud-native
iconArrowDown
tema 14

Caso de Estudio: Implementación de EDA en una Aplicación Empresarial

  • Descripción del caso de estudio: Aplicación empresarial con alto tráfico
  • Análisis de los requisitos y problemas a resolver
  • Diseño de la arquitectura orientada a eventos para la solución
  • Implementación de event sourcing y event streaming
  • Uso de microservicios en la aplicación empresarial
  • Monitoreo y trazabilidad de eventos en la aplicación
  • Gestión de errores y retries en el sistema
  • Estrategias para garantizar la consistencia eventual
  • Resultados obtenidos y beneficios para la empresa
  • Lecciones aprendidas y desafíos enfrentados en el proyecto
iconArrowDown
tema 15

Proyecto Final: Diseño e Implementación de una Arquitectura Orientada a Eventos

  • Selección de un caso de uso real para el proyecto
  • Modelado de eventos, productores y consumidores
  • Implementación de un broker de mensajes como Kafka o RabbitMQ
  • Aplicación de event sourcing y event streaming en la arquitectura
  • Monitoreo y trazabilidad de eventos en tiempo real
  • Diseño de estrategias de seguridad para la arquitectura orientada a eventos
  • Gestión de errores y políticas de retry
  • Implementación de consistencia eventual en el sistema
  • Documentación y presentación de la solución final
  • Evaluación y retroalimentación sobre el proyecto
iconArrowDown

Preguntas Frecuentes de EDA - Arquitectura Orientada a Eventos

¿Cuáles son los beneficios de realizar el curso de Arquitectura Orientada a Eventos?

accordionIcon
El curso de Arquitectura Orientada a Eventos te proporciona un entendimiento profundo sobre cómo diseñar sistemas distribuidos que sean escalables y resilientes. Aprenderás a implementar arquitecturas basadas en eventos, mejorando la capacidad de tu empresa para manejar grandes volúmenes de datos y eventos en tiempo real. Este conocimiento es clave para empresas que buscan optimizar sus sistemas de TI y mejorar su eficiencia operativa.

¿El curso de Arquitectura Orientada a Eventos se puede bonificar a través de FUNDAE?

accordionIcon
Sí, el curso de Arquitectura Orientada a Eventos es bonificable a través de FUNDAE. Esto permite a las empresas reducir los costes del curso utilizando los créditos disponibles para formación. Gestionamos el proceso de bonificación, y por este servicio se cobra un 10% adicional del valor del curso más IVA, el cual también es bonificable.

¿En qué modalidad se imparte el curso de Arquitectura Orientada a Eventos?

accordionIcon
El curso de Arquitectura Orientada a Eventos se imparte mediante el Aula Virtual Personalizada a través de Zoom. Los participantes pueden interactuar en directo con el formador y acceder a las grabaciones de las sesiones, facilitando la adaptación del aprendizaje a las necesidades específicas de cada empresa.

¿Qué habilidades desarrollaré con el curso de Arquitectura Orientada a Eventos?

accordionIcon
Con este curso, desarrollarás habilidades para modelar y gestionar eventos en sistemas distribuidos, implementar producers y consumers, y utilizar brokers de mensajes como Kafka y RabbitMQ. Además, profundizarás en técnicas avanzadas como event sourcing, event streaming, y garantizar la consistencia eventual, aplicando estos conocimientos en el desarrollo de soluciones empresariales reales.

¿Cómo puedo inscribirme en el curso de Arquitectura Orientada a Eventos?

accordionIcon
Puedes inscribirte en el curso completando el formulario de inscripción en nuestra página web. Asegúrate de proporcionar toda la información necesaria para que podamos procesar tu inscripción de manera eficiente y coordinar la bonificación a través de FUNDAE si así lo deseas.