Message Queue
Noun · Development
Definitions
A message queue is a middleware system enabling asynchronous communication between services. Producers send messages to a queue, where they are stored until consumers retrieve and process them. This decouples senders from receivers: the producer does not need to know who consumes the message, and the consumer processes at its own pace. Message queues handle traffic spikes by buffering bursts, ensure delivery when downstream services are temporarily unavailable, and enable parallel processing by distributing work across multiple consumers. Popular implementations include RabbitMQ, Apache Kafka, Amazon SQS, and Redis Streams. Key considerations include delivery guarantees (at-most-once, at-least-once, exactly-once), ordering, and dead-letter queues for failed messages.
In plain English: A waiting line for data messages between programs — ensures nothing gets lost even when the receiving program is busy or temporarily down.