concepto · intermedio · 2 min de lectura
RabbitMQ
RabbitMQ es un message broker que implementa AMQP, ideal para enrutamiento complejo de mensajes y colas de trabajo con confirmaciones de entrega.
No requiere conocimientos previos.
Alcance en breve
Cubre
- RabbitMQ as a concept
No cubre
- implementation details
Supone
- The reader understands relevant fundamentals.
Resumen
RabbitMQ es un broker de mensajería maduro y ampliamente adoptado que implementa el protocolo AMQP 0-9-1. A diferencia de Kafka —optimizado para streaming y retención—, RabbitMQ brilla en enrutamiento flexible: los productores publican en exchanges, que enrutan mensajes a colas según reglas —routing keys, bindings, headers—.
Soporta múltiples protocolos (AMQP, MQTT, STOMP), confirmaciones de entrega, dead letter queues, y alta disponibilidad con mirroring o quorum queues. Es la opción natural cuando necesitás enrutamiento complejo y garantías de entrega por mensaje individual.
Alcance y supuestos
Cubre RabbitMQ como broker, su modelo de exchanges/colas, y casos de uso. Asume familiaridad con mensajería.
Modelo mental
Una central telefónica antigua con operadoras. Llamás, decís a quién querés hablar —routing key—, la operadora —exchange— conecta tu llamada a la línea correcta —cola—. Si la persona no está, el mensaje queda esperando.
Uso práctico
- ✅ Colas de trabajo, enrutamiento complejo, integración entre sistemas con protocolos distintos.
- ❌ Streaming de alto volumen con múltiples consumidores leyendo los mismos datos históricos.
Ejemplo trabajado: cola de thumbnails
Un usuario sube una foto. El backend publica un mensaje en la cola thumbnail-gen. Tres workers consumen la cola —cada mensaje va a un solo worker—. Si un worker falla a mitad del proceso, RabbitMQ reenvía el mensaje a otro worker (ack no enviado).
Evidencia
- Wikipedia, RabbitMQ documenta su arquitectura y el protocolo AMQP.
Fuentes citadas
- Wikipedia, RabbitMQ (Síntesis, 21-07-2026)