Asynchronous Processing 101: Message Queues vs Message Brokers
January 07, 2026
In this one before we talk about message queues and message brokers, first lets understand why exactly we need them, and in what kind of situations we choose them.
So lets start by quickly understanding what synchronous and asynchronous processing means :
- Synchronous processing
Synchronous processing means the user sends a request and the backend does the work immediately, returning the final response only after it is done.
For example - loading an Instagram/Twitter feed, logging into a website, add to cart or view cart total, payments.
- Asynchronous processing
Asynchronous processing means the user sends a request and the backend acknowledges it quickly (like "request accepted"), while the actual work happens in the background. The result is available later (status page, polling, notification, webhook, etc.).
Asynchronous processing can be achieved using message queues and message brokers.
For example - VM provisioning (you spin an EC2 instance on AWS, but you do not wait on a loading screen; you can keep browsing while it starts), video processing, sending emails/notifications (you sign up or place an order and the UI returns success immediately, while email/push/SMS sends in the background).

Some of the usecases where you can use asynchronous processing are :
- Microservices communication without tight coupling / cascading failures
- Long-running tasks that shouldn’t block request/response
- Producer speed ≠ consumer speed, meaning when work arrives faster than it can be processed, so you buffer it in a queue and handle it at the consumer’s pace.
- When you want to delegate a task to multiple workers.
- When the type of the task itself is asynchronous by nature. (emails, notifications, webhooks etc.)
- Fan-out to multiple workers / parallel processing
Now i mentioned that Asynchronous processing can be achieved using message brokers or message queues, but most people get confused between message brokers and message queues.
Message Brokers vs Message Queues
Message Queues
A message queue is a messaging data structure (a buffer) that holds messages produced by a producer until they are processed by consumers.
-
Ordering : They process messages usually in the same order as they arrive in the queue (FIFO). (sometimes other ordering like priority ordering can be done)
-
Work Distribution : When multiple consumers read from the same queue, each message is typically processed by only one consumer. (only once consumption also called point to point communication pattern) After a successful ack, it is removed; failures may cause retries/redelivery.
Message Brokers
It is a system that can handle multiple queues, and also has other additional features like routing logic, different communication patterns etc.
-
Multiple patterns : Supports point-to-point (work queues) and pub/sub (multicast to multiple consumers).
-
Routing & delivery features : Can route messages based on keys/headers/topics and typically supports ack/retry/DLQ, backpressure, auth, monitoring, and often persistence/replication for durability.
But usually they are used interchangeably because they serve the same purpose of asynchronous communication.
Hope you liked this article, if you liked it then please do subscribe to my newsletter.