Dead letter queue
In message queueing a dead letter queue, or dead letter topic in some messaging systems, is a service implementation to store messages that the messaging system cannot or should not deliver. Although implementation-specific, messages can be routed to the DLQ for the following reasons:
- The message is sent to a queue that does not exist.
- The maximum queue length is exceeded.
- The message exceeds the size limit.
- The message expires because it reached the TTL (time to live)
- The message is rejected by another queue exchange.
- The message has been read and rejected too many times.
Management of dead letter queues typically involves monitoring and alert systems. Organizations may implement specialized handlers for automated remediation or manual processing of DLQ messages.
Queueing systems that incorporate dead letter queues include Amazon EventBridge, Amazon Simple Queue Service, Apache ActiveMQ, Google Cloud Pub/Sub, HornetQ, Microsoft Message Queuing, Microsoft Azure Event Grid and Azure Service Bus, WebSphere MQ, Solace PubSub+, Rabbit MQ, Confluent Cloud and Apache Pulsar.