Saltar al contenido
Logotipo de Trainontech Trainontech

Desarrollo Backend y APIs · BAC-191

Mensajería y colas: RabbitMQ y Kafka

Desacoplar servicios con RabbitMQ y Kafka: garantías de entrega, reintentos y flujos de eventos

Bajo demanda Especialización 7 módulos · 32 clases

Formato asíncrono Desarrollo, Ingeniería / Industria RabbitMQ, Kafka, Docker

Lo que aprenderás

  • Diferenciar cola de trabajo y registro de eventos eligiendo RabbitMQ o Kafka según el caso
  • Configurar intercambios, colas y claves de enrutado en RabbitMQ para reparto y difusión
  • Publicar y consumir en Kafka gestionando particiones, grupos de consumidores y desplazamientos
  • Garantizar el procesamiento con confirmaciones, reintentos, cola de mensajes fallidos e idempotencia
  • Diseñar el esquema de los mensajes y evolucionarlo sin romper a los consumidores existentes
  • Implementar la bandeja de salida transaccional para no perder eventos ante fallos de escritura
  • Monitorizar retraso de consumo, profundidad de cola y reproceso desde un desplazamiento anterior

Contenido del curso

7 módulos · 32 clases en vídeo · práctica guiada en cada módulo

Módulo 1 · Presentación y modelos de mensajería 4 clases
  • Comunicación síncrona frente a asíncrona
  • Cola de trabajo, publicación-suscripción y registro de eventos
  • Cuándo RabbitMQ y cuándo Kafka
  • Laboratorio con ambos intermediarios en Docker
Módulo 2 · RabbitMQ 5 clases
  • Intercambios, colas y enlaces
  • Claves de enrutado: directo, por tema y difusión
  • Confirmaciones del consumidor y del publicador
  • Prefetch, reparto de carga y colas duraderas
  • Colas de mensajes fallidos y reintentos con retraso
Módulo 3 · Kafka 5 clases
  • Temas, particiones y ordenación
  • Productores: claves, lotes y confirmaciones
  • Grupos de consumidores y reparto de particiones
  • Desplazamientos, confirmación y reproceso
  • Retención, compactación y almacenamiento
Módulo 4 · Garantías y errores 5 clases
  • Entrega como máximo una vez, al menos una vez y exactamente una vez
  • Idempotencia en el consumidor
  • Mensajes venenosos y aislamiento
  • Reintentos con retroceso y límites
  • Provocar caídas y comprobar qué se pierde
Módulo 5 · Mensajes y contratos 5 clases
  • Diseño del contenido de un evento
  • Esquemas y registro de esquemas
  • Compatibilidad hacia adelante y hacia atrás
  • Versionado de eventos sin romper consumidores
  • Eventos de dominio frente a eventos de integración
Módulo 6 · Integración con la base de datos 4 clases
  • El problema de la doble escritura
  • Bandeja de salida transaccional
  • Captura de cambios de datos
  • Proyecciones y vistas materializadas a partir de eventos
Módulo 7 · Operación y caso práctico 4 clases
  • Retraso de consumo y profundidad de cola
  • Métricas y alertas del intermediario
  • Reproceso controlado desde un desplazamiento anterior
  • Caso práctico: integración de tres servicios mediante eventos

Requisitos

  • Experiencia desarrollando servicios backend que se comunican entre sí
  • Manejo de Docker y de composición de contenedores para levantar los intermediarios
  • Conocer bases de datos y transacciones para entender las garantías de entrega

Descripción

Cuando dos servicios se llaman directamente, uno depende de que el otro esté vivo justo en ese instante. Una cola rompe esa dependencia, pero introduce preguntas nuevas: qué ocurre si el consumidor procesa el mensaje dos veces, dónde acaban los mensajes que fallan siempre, y qué pasa con el pedido si el mensaje se pierde entre la escritura en base de datos y la publicación.

El curso responde a cada una sobre un laboratorio con RabbitMQ y Kafka en contenedores. Se implementan colas de trabajo con confirmaciones y cola de fallos, flujos de eventos con particiones y grupos de consumidores, e idempotencia en el receptor. Se monta la bandeja de salida transaccional y se provocan caídas para comprobar qué garantía se mantiene realmente en cada configuración.

También se trabaja la evolución del esquema de mensajes y la monitorización del retraso de consumo, que es la señal temprana de casi todo problema en producción. Es la continuación natural de arquitectura de microservicios y la base para integraciones industriales o de administración con procesos asíncronos.

¿Para quién es este curso?

  • Equipos de desarrollo que integran servicios que no pueden depender de la disponibilidad mutua
  • Ingeniería que recoge telemetría o eventos de planta y debe procesarlos sin perder datos
  • Perfiles de plataforma responsables de la mensajería compartida entre varios equipos
Bajo demanda

Curso diseñado con la ficha cerrada. Se produce al confirmarse un grupo o un contrato.

Código
BAC-191
Nivel
Especialización
Público
Desarrollo, Ingeniería / Industria
Entorno
RabbitMQ, Kafka, Docker

Este curso incluye

  • 32 clases en vídeo bajo demanda
  • Práctica en entornos web y simuladores, sin instalar nada
  • Tutorización en el campus
  • Acceso desde móvil, tableta y ordenador
  • Actualizaciones cuando cambia la versión de la herramienta
  • Certificado de finalización

Sigue aprendiendo

Cursos relacionados

Bajo demanda

BAC-181Desarrollo Backend y APIs

Seguridad en APIs: OWASP API Top 10

Autorización rota, exposición de datos y abuso de recursos, explotados y corregidos en laboratorio.

PythonDocker

Especialización 30 clases

Bajo demanda

BAC-190Desarrollo Backend y APIs

Arquitectura de microservicios

Descomposición, comunicación, consistencia eventual y el coste real de dejar el monolito.

DockerKubernetes

Especialización 37 clases

Bajo demanda

BAC-111Desarrollo Backend y APIs

Django REST Framework

Serializadores, vistas genéricas, permisos y paginación para exponer un backend Django como API.

DjangoPython

Avanzado 32 clases