RabbitMQ's flexible exchanges and bindings mendukung berbagai pola pesan — work queues, publish/subscribe, routing, topics, dan request/reply (RPC). Memahami pola-pola ini adalah kunci untuk menggunakan RabbitMQ guna memenuhi kebutuhan komunikasi yang berbeda.
Work queues (distribusi tugas)
WORK QUEUE → distribute tasks among multiple WORKERS (competing consumers):
→ producer → queue → multiple consumers (each message to ONE worker) → parallel processing
→ for: distributing background work; scaling task processing
Publish/Subscribe (broadcast)
PUB/SUB → broadcast a message to MULTIPLE consumers (each gets a copy):
→ FANOUT exchange → every bound queue gets the message → all consumers receive it
→ for: broadcasting events to all interested parties (notifications, updates)
