Skip to content

RabbitMQ — From Zero to Hero

A standalone, beginner→advanced course on designing async systems with RabbitMQ. From the AMQP model and exchange routing to acknowledgements, publisher confirms, dead-letter exchanges, work queues, RPC, quorum queues, and scaling — every topic with the why, the trade-offs, and Node, Python, and Go examples side by side.

Messaging Foundations

Why async messaging, what RabbitMQ and AMQP are, the core concepts, and your first publish/consume. Start →

Exchanges & Routing

Direct, fanout, topic, and headers exchanges — how a message finds its queues. Route →

Queues & Messages

Queue and message properties, acknowledgements, prefetch/QoS, and TTL & limits. Tune →

Reliability & Delivery

Publisher confirms, dead-letter exchanges, delivery guarantees, and durability. Harden →

Consumer Patterns

Work queues, publish/subscribe, RPC over RabbitMQ, and retry with backoff. Apply →

Operations & Scaling

Clustering & quorum queues, connections & channels, monitoring, and flow control. Scale →

Patterns & Alternatives

Messaging patterns, RabbitMQ vs Kafka, Streams, and a production-grade consumer. Extend →

The model first, then the code

Every lesson starts from the AMQP model — producers, exchanges, bindings, queues, consumers — so the code is obvious once you can see how a message flows.

Three languages side by side

Producer and consumer examples in Node (amqplib), Python (pika), and Go (amqp091) through synced tabs — pick your language once and follow it everywhere.

Design, not just syntax

Every topic covers the why and the trade-offs — when to ack manually, how to guarantee delivery, how to handle poison messages, and when a queue is the wrong tool.

Diagrams that explain

Exchange routing, acknowledgement flow, dead-letter retry, and RPC correlation as theme-aware Mermaid diagrams. Bilingual (English / ไทย) with saved quiz progress.