Backend

Message Queue

A middleware component that enables asynchronous communication between services by storing messages in a queue until the receiving service is ready to process them.

A message queue is a form of asynchronous service-to-service communication. Messages are stored in a queue and processed by consumers at their own pace, decoupling the producer from the consumer.

Message queues enable asynchronous processing (handle tasks later without blocking the user), load leveling (absorb traffic spikes by buffering messages), reliability (messages persist even if consumers are temporarily unavailable), and fan-out (one message can be processed by multiple consumers).

Popular message queue systems include RabbitMQ (traditional message broker with AMQP protocol), Apache Kafka (distributed event streaming platform for high-throughput), AWS SQS (managed queue service), and Redis Streams (lightweight pub/sub and stream processing).

Common use cases include background job processing (email sending, image resizing), order processing pipelines, log aggregation, real-time notifications, and data pipeline ingestion.

Want to learn more?

Explore more developer terms or read in-depth articles on the blog.

Browse all terms