Envíanos tu consulta
Términos y condiciones *
*Si no puedes asistir en directo te facilitaremos un enlace para verlo en diferido
logoImagina
Formación
Modalidades
Próximas Convocatorias
Temario
FAQ
Solicitar información
iconoCurso

Curso de Event Sourcing y Event Streaming

DISPONIBLE EN MODALIDAD:
aMedidaIcon
Aula Virtual Personalizada
arrowRightDark

Este curso abarca desde los fundamentos hasta la implementación avanzada de Event Sourcing y Event Streaming. Los participantes aprenderán cómo persistir eventos como fuente de verdad y cómo procesar esos eventos en tiempo real para crear sistemas distribuidos eficientes y escalables. Además, se explorarán técnicas avanzadas como la consistencia eventual, el uso de brokers de mensajes y la integración de microservicios con eventos. Al finalizar, los alumnos realizarán un proyecto integrador que los preparará para enfrentar desafíos en arquitecturas modernas basadas en eventos.

iconClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClient

Formación en Event Sourcing y Event Streaming bonificable para empresas

A quién va dirigido nuestro curso de Event Sourcing y Event Streaming

Arquitectos de software, desarrolladores y profesionales interesados en sistemas distribuidos y procesamiento de eventos en tiempo real.

Objetivos de nuestro curso de Event Sourcing y Event Streaming

  • Comprender los fundamentos de Event Sourcing y Event Streaming.
  • Implementar sistemas de Event Sourcing con bases de datos especializadas.
  • Procesar eventos en tiempo real usando herramientas como Apache Kafka.
  • Aplicar técnicas avanzadas de consistencia eventual en sistemas distribuidos.
  • Desarrollar un proyecto final de arquitectura basada en eventos escalable y resiliente.

Qué vas a aprender en nuestro curso de Event Sourcing y Event Streaming

Este curso abarca desde los fundamentos hasta la implementación avanzada de Event Sourcing y Event Streaming. Los participantes aprenderán cómo persistir eventos como fuente de verdad y cómo procesar esos eventos en tiempo real para crear sistemas distribuidos eficientes y escalables. Además, se explorarán técnicas avanzadas como la consistencia eventual, el uso de brokers de mensajes y la integración de microservicios con eventos. Al finalizar, los alumnos realizarán un proyecto integrador que los preparará para enfrentar desafíos en arquitecturas modernas basadas en eventos.

Requisitos de nuestro curso de Event Sourcing y Event Streaming

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

Temario del curso de Event Sourcing y Event Streaming

tema 1

Introducción a Event Sourcing y Event Streaming

  • Definición de Event Sourcing y Event Streaming
  • Comparación entre Event Sourcing, Event Streaming y arquitecturas tradicionales
  • Beneficios de utilizar eventos como fuente de verdad
  • Casos de uso comunes: fintech, IoT, comercio electrónico
  • Diferencias entre almacenar estados y almacenar eventos
  • La importancia de los eventos en arquitecturas distribuidas
  • Escalabilidad y resiliencia en sistemas basados en eventos
  • Relación entre Event Sourcing y Consistencia Eventual
  • Ejemplo práctico: Aplicación de Event Sourcing en un sistema bancario
  • Introducción a herramientas y tecnologías clave: Kafka, Apache Flink, EventStore
iconArrowDown
tema 2

Conceptos Básicos de Event Sourcing

  • ¿Qué es Event Sourcing?
  • Diferencia entre estados y eventos
  • Persistencia de eventos como fuente de verdad
  • Estructura de un evento: timestamp, datos, metadatos
  • Almacenamiento de eventos: bases de datos especializadas (EventStore)
  • Reconstrucción del estado desde eventos
  • Auditoría y trazabilidad mediante Event Sourcing
  • Ejemplo práctico: Implementación de Event Sourcing en una plataforma de ventas
  • Patrones comunes en el diseño de Event Sourcing
  • Limitaciones y desafíos de Event Sourcing en sistemas grandes
iconArrowDown
tema 3

Conceptos Básicos de Event Streaming

  • ¿Qué es Event Streaming?
  • Diferencias entre procesamiento batch y procesamiento en tiempo real
  • El ciclo de vida de un evento en un sistema de streaming
  • Herramientas de Event Streaming: Apache Kafka, Apache Flink, AWS Kinesis
  • Ejemplo práctico: Implementación de Event Streaming en un sistema de monitoreo de IoT
  • Patrones de diseño en Event Streaming: filtrado, agregación y transformación
  • Procesamiento de eventos con baja latencia
  • Gestión de grandes volúmenes de datos en tiempo real
  • Limitaciones y consideraciones al utilizar Event Streaming
  • Casos de uso de Event Streaming en la industria
iconArrowDown
tema 4

Productores y Consumidores en Event Sourcing y Streaming

  • Productores: creación y emisión de eventos
  • Consumidores: lectura y procesamiento de eventos
  • Desacoplamiento entre productores y consumidores en arquitecturas distribuidas
  • Diseño de productores y consumidores escalables
  • Ejemplo práctico: Implementación de productores y consumidores en una aplicación de pagos
  • Garantías de entrega de eventos: "al menos una vez", "como máximo una vez", "exactamente una vez"
  • Políticas de reintento y manejo de errores en el consumo de eventos
  • Técnicas para evitar duplicados en el procesamiento de eventos
  • Monitorización de productores y consumidores en sistemas distribuidos
  • Optimización del rendimiento en sistemas de alto volumen
iconArrowDown
tema 5

Persistencia de Eventos en Event Sourcing

  • Almacenamiento de eventos: bases de datos especializadas vs. bases de datos tradicionales
  • Elección de bases de datos para Event Sourcing: EventStore, PostgreSQL, MongoDB
  • Organización y estructura de los eventos en la base de datos
  • Mantenimiento de la consistencia de los eventos
  • Ejemplo práctico: Persistencia de eventos en un sistema de seguimiento de envíos
  • Estrategias de eliminación y archivo de eventos antiguos
  • Versionado de eventos y evolución de esquemas
  • Técnicas para manejar grandes volúmenes de eventos históricos
  • Recuperación de estados a partir de eventos antiguos
  • Mejores prácticas para la administración de eventos persistidos
iconArrowDown
tema 6

Procesamiento de Eventos en Tiempo Real

  • Conceptos clave en el procesamiento de eventos en tiempo real
  • Procesamiento de streams de eventos con Apache Flink y Kafka Streams
  • Filtrado, transformación y agregación de eventos
  • Ejemplo práctico: Procesamiento de eventos en tiempo real en un sistema de análisis de redes sociales
  • Implementación de pipelines de eventos para el procesamiento en tiempo real
  • Manejo de eventos fuera de secuencia en sistemas distribuidos
  • Latencia y tiempos de respuesta en el procesamiento en tiempo real
  • Tolerancia a fallos en sistemas de Event Streaming
  • Métricas clave para monitorear el rendimiento del procesamiento de eventos
  • Escalabilidad horizontal en sistemas de Event Streaming
iconArrowDown
tema 7

Consistencia Eventual en Event Sourcing y Streaming

  • Concepto de consistencia eventual en sistemas distribuidos
  • Diferencia entre consistencia fuerte y consistencia eventual
  • Ejemplo práctico: Implementación de consistencia eventual en un sistema de inventario
  • Garantías de consistencia en Event Sourcing y Event Streaming
  • Patrones de manejo de inconsistencia en sistemas distribuidos
  • Técnicas para asegurar la coherencia de los datos en sistemas distribuidos
  • Desafíos de la consistencia eventual en grandes volúmenes de datos
  • Herramientas y bibliotecas para gestionar la consistencia eventual
  • Casos de uso donde la consistencia eventual es aplicable
  • Mejores prácticas para garantizar la integridad en sistemas eventuales
iconArrowDown
tema 8

Event Sourcing y CQRS (Command Query Responsibility Segregation)

  • Introducción al patrón CQRS
  • Relación entre CQRS y Event Sourcing
  • Separación de comandos (escritura) y consultas (lectura)
  • Ejemplo práctico: Implementación de CQRS y Event Sourcing en una plataforma de comercio electrónico
  • Beneficios de usar CQRS en sistemas de alto rendimiento
  • Sincronización entre los modelos de lectura y escritura en CQRS
  • Implementación de consistencia eventual en CQRS
  • Limitaciones y consideraciones de usar CQRS con Event Sourcing
  • Patrones de diseño para CQRS en sistemas distribuidos
  • Casos de uso de CQRS en la industria
iconArrowDown
tema 9

Integración de Event Sourcing y Event Streaming con Microservicios

  • Event Sourcing y Event Streaming en arquitecturas de microservicios
  • Ejemplo práctico: Uso de Event Sourcing y Streaming para la comunicación entre microservicios
  • Desacoplamiento entre microservicios mediante eventos
  • Ventajas de usar eventos en lugar de APIs REST
  • Gestión de transacciones distribuidas en sistemas de microservicios
  • Garantías de entrega en microservicios basados en eventos
  • Estrategias para la gestión de consistencia eventual en microservicios
  • Uso de brokers de mensajes para la comunicación entre microservicios
  • Desafíos de la integración de eventos en microservicios
  • Casos de éxito de Event Sourcing y Streaming en microservicios
iconArrowDown
tema 10

Brokers de Mensajes en Event Sourcing y Streaming

  • El papel de los brokers de mensajes en Event Streaming
  • Principales brokers de mensajes: Apache Kafka, RabbitMQ, AWS SNS/SQS
  • Ejemplo práctico: Configuración de Apache Kafka para Event Streaming
  • Garantías de entrega y durabilidad en brokers de mensajes
  • Particionamiento y replicación en brokers de mensajes
  • Estrategias de monitoreo de brokers de mensajes
  • Optimización del rendimiento de brokers en sistemas de alta demanda
  • Gestión de errores en la transmisión de eventos a través de brokers
  • Casos de uso de brokers de mensajes en Event Sourcing y Streaming
  • Mejores prácticas para el uso de brokers en sistemas basados en eventos
iconArrowDown
tema 11

Seguridad en Sistemas Basados en Eventos

  • Desafíos de seguridad en sistemas de Event Sourcing y Streaming
  • Autenticación y autorización en Event Sourcing
  • Ejemplo práctico: Implementación de seguridad en un sistema financiero basado en eventos
  • Cifrado de eventos en tránsito y en reposo
  • Protección contra ataques de denegación de servicio en sistemas distribuidos
  • Implementación de auditoría en sistemas de eventos
  • Políticas de control de acceso para productores y consumidores
  • Seguridad en brokers de mensajes
  • Identificación y manejo de eventos maliciosos o corruptos
  • Mejores prácticas de seguridad en sistemas basados en eventos
iconArrowDown
tema 12

Monitorización y Trazabilidad en Event Sourcing y Streaming

  • Importancia de la monitorización en sistemas de eventos
  • Herramientas para monitorear eventos: Prometheus, Grafana, ELK Stack
  • Ejemplo práctico: Monitorización de un sistema de eventos en tiempo real
  • Métricas clave en Event Sourcing y Streaming: latencia, throughput, errores
  • Implementación de trazabilidad en sistemas distribuidos
  • Uso de logs para la trazabilidad de eventos
  • Identificación de cuellos de botella en el procesamiento de eventos
  • Estrategias de alertas y notificaciones basadas en eventos
  • Mejores prácticas para la trazabilidad y auditoría de eventos
  • Casos de uso de monitorización en la industria
iconArrowDown
tema 13

Caso de Estudio: Implementación de Event Sourcing en una Plataforma Empresarial

  • Descripción del caso de estudio: Sistema empresarial de alto tráfico
  • Análisis de requisitos y selección de herramientas
  • Modelado de eventos y diseño del sistema basado en Event Sourcing
  • Implementación de la persistencia de eventos
  • Integración de Event Streaming para la actualización en tiempo real
  • Estrategias de manejo de consistencia eventual
  • Monitoreo y trazabilidad en el sistema de eventos
  • Resultados obtenidos y beneficios del uso de Event Sourcing y Streaming
  • Desafíos enfrentados durante la implementación
  • Lecciones aprendidas y recomendaciones
iconArrowDown
tema 14

Escalabilidad y Rendimiento en Sistemas Basados en Eventos

  • Escalabilidad horizontal y vertical en sistemas de eventos
  • Técnicas de particionamiento en Event Streaming
  • Ejemplo práctico: Escalabilidad de Event Streaming en un sistema de procesamiento de pagos
  • Uso de colas distribuidas y replicación de eventos
  • Optimización del rendimiento en sistemas de alto tráfico
  • Técnicas de balanceo de carga para consumidores
  • Manejo de grandes volúmenes de datos en tiempo real
  • Estrategias para minimizar la latencia en sistemas distribuidos
  • Métricas clave para medir el rendimiento en sistemas de eventos
  • Mejores prácticas para optimizar el rendimiento y la escalabilidad
iconArrowDown
tema 15

Proyecto Final: Implementación Completa de Event Sourcing y Event Streaming

  • Selección de un caso de uso real para el proyecto
  • Modelado de eventos y selección de herramientas de streaming
  • Implementación de la persistencia de eventos en un sistema distribuido
  • Integración de Event Streaming para la actualización en tiempo real
  • Diseño de la consistencia eventual y manejo de fallos
  • Monitoreo y trazabilidad del sistema de eventos
  • Estrategias de seguridad y autenticación en el sistema
  • Implementación de métricas y monitorización de rendimiento
  • Documentación y presentación de la solución final
  • Evaluación y retroalimentación sobre el proyecto final
iconArrowDown