Exchange và binding linh hoạt của RabbitMQ hỗ trợ nhiều mẫu messaging — work queue, publish/subscribe, routing, topic, và request/reply (RPC). Hiểu các mẫu này là chìa khóa để dùng RabbitMQ cho các nhu cầu giao tiếp khác nhau.
Work queue (phân phối task)
WORK QUEUE → phân phối task cho nhiều WORKER (competing consumer):
→ producer → queue → nhiều consumer (mỗi message đến MỘT worker) → xử lý song song
→ dùng cho: phân phối công việc nền; mở rộng xử lý task
Publish/Subscribe (broadcast)
PUB/SUB → broadcast một message đến NHIỀU consumer (mỗi cái nhận một bản sao):
→ FANOUT exchange → mọi queue đã bind đều nhận message → tất cả consumer nhận nó
→ dùng cho: broadcast sự kiện đến tất cả các bên quan tâm (thông báo, cập nhật)
