Boost Academy
FormaciónEvaluacionesPerfil
Volver
  • En directo

RabbitMQ — Iniciación

10h de clase en directo·HACK A BOSS·Español

Skills que aprenderás

  • RabbitMQ

Convocatorias

Necesitas un plan activo

Para acceder a los cursos en directo necesitas un plan activo. Estamos trabajando para que los planes estén disponibles pronto — ¡mantente atento!

No hay convocatorias abiertas ahora mismo, pero no te pierdas la oportunidad: guarda este curso y te avisamos en cuanto se abra una convocatoria.

Descripción

Objetivos

Temario

Requisitos técnicos

Conocimientos previos

Detalles de la convocatoria

Recursos

No hay recursos disponibles todavía para esta convocatoria

Este curso está dirigido a desarrolladores de software sin experiencia previa en sistemas de mensajería que deseen incorporar RabbitMQ a su stack tecnológico. A lo largo de diez horas, el estudiante construirá una base sólida sobre el protocolo AMQP y la arquitectura de mensajería orientada a eventos: comprenderá cómo se estructuran y relacionan los componentes fundamentales del broker, pondrá en marcha un entorno propio de RabbitMQ —ya sea en local o mediante Docker—, escribirá y ejecutará sus primeros productores y consumidores, y configurará los recursos básicos del broker con criterios de durabilidad y aislamiento. Al finalizar, el participante será capaz de desplegar y operar un flujo de mensajes de extremo a extremo en un entorno de pruebas completamente funcional.

  1. Describir el modelo de componentes de AMQP —productor, exchange, cola y consumidor— y los tipos de exchange disponibles (direct, fanout, topic), explicando el papel que cumple cada elemento en el enrutamiento de mensajes.
  2. Instalar y activar RabbitMQ en un entorno local o contenedor Docker, y configurar credenciales y virtual host desde el panel de gestión para disponer de un entorno de pruebas aislado.
  3. Desarrollar un productor que publique mensajes en una cola predefinida y un consumidor que los reciba con acuse de recibo manual, aplicando la declaración idempotente de exchanges y colas con los atributos de durabilidad adecuados.
  4. Distinguir el comportamiento del acknowledgement automático frente al manual e identificar los errores de enrutamiento que se registran en los logs del broker, relacionando ambos aspectos con la fiabilidad del sistema de mensajería.
  5. Integrar todos los elementos trabajados —instalación, declaración de recursos, publicación y consumo— en un flujo de mensajes completo y verificable en el entorno de pruebas propio.

Fundamentos de AMQP y arquitectura de RabbitMQ Se introduce el protocolo AMQP como base del modelo de mensajería de RabbitMQ. A partir de diagramas representativos, el participante aprende a reconocer y describir los cuatro componentes centrales del modelo: productor, exchange, cola y consumidor, así como las relaciones de enrutamiento que los unen. Se analizan los tres tipos de exchange —direct, fanout y topic— estudiando los criterios que determinan cuándo emplear cada uno y cómo se puede deducir el tipo utilizado a partir de la lectura de fragmentos de código o configuración reales.

Instalación y configuración inicial del broker El participante pone en marcha su propio broker siguiendo una guía paso a paso que cubre tanto la instalación nativa en sistema local como la alternativa con contenedor Docker. Una vez confirmado el broker activo, se accede al panel de gestión de RabbitMQ para crear credenciales específicas y definir un virtual host dedicado, obteniendo así un entorno de pruebas completamente aislado del resto de configuraciones.

Declaración de recursos y primeras publicaciones Con el broker operativo, el curso aborda la declaración idempotente de exchanges y colas, prestando especial atención a los atributos durable y auto-delete y a la importancia de la idempotencia para evitar errores en reinicios. Sobre esta base declarativa, el participante implementa un productor básico que publica mensajes en una cola predefinida utilizando la librería cliente oficial del lenguaje del ejercicio.

Consumo de mensajes y fiabilidad Se implementa un consumidor básico capaz de recibir y mostrar los mensajes de la cola. El bloque pone el foco en el mecanismo de acknowledgement: se analiza en detalle la diferencia funcional entre el modo automático y el manual, y se practica la confirmación explícita (ack) desde el código del consumidor. Complementariamente, se reproducen escenarios en los que un mensaje no puede ser enrutado (unroutable) para observar en los logs del broker las señales de error asociadas y aprender a interpretarlas.

Flujo de mensajes de extremo a extremo El cierre del curso integra todos los conocimientos adquiridos en un ejercicio de síntesis en el que el participante diseña y ejecuta un flujo completo de mensajería: desde la declaración de recursos hasta la verificación del consumo correcto con acuse de recibo manual, pasando por la publicación de mensajes a través del exchange seleccionado. Este ejercicio integrador consolida la comprensión global del ciclo de vida de un mensaje en RabbitMQ.

  • Sistema operativo: Windows 10/11, macOS 12 o superior, o distribución Linux con soporte activo (Ubuntu 22.04 LTS recomendado).
  • RabbitMQ: versión 3.12 o superior (se instala durante el curso; no es necesario tenerlo previamente).
  • Docker (opcional): Docker Desktop 4.x o Docker Engine 24.x si se opta por la instalación en contenedor.
  • Lenguaje y librería cliente: el lenguaje de los ejercicios prácticos es Python 3.10+; se requiere tener instalado pip y permisos para instalar paquetes (pika ≥ 1.3). Los participantes que prefieran otro lenguaje deberán disponer del entorno correspondiente y su librería cliente AMQP oficial.
  • Acceso a internet: necesario para descargar RabbitMQ, la imagen Docker y las dependencias de la librería cliente.
  • Navegador web moderno: Chrome, Firefox o Edge en versión reciente, para acceder al panel de gestión de RabbitMQ (puerto 15672 por defecto).
  • Permisos de administrador/sudo en la máquina local para la instalación del broker.
  • Manejo básico de la línea de comandos (Linux o macOS) o PowerShell (Windows) para instalar paquetes y ejecutar procesos.
  • Comprensión general de qué es un proceso cliente-servidor y cómo se comunican dos aplicaciones a través de una red.
  • Familiaridad con al menos un lenguaje de programación (Python, Java, Node.js u otro) al nivel de leer, modificar y ejecutar un script sencillo.
  • Nociones elementales de Docker (saber lanzar un contenedor con docker run) resultan convenientes pero no imprescindibles, ya que el curso ofrece también la vía de instalación nativa.