In message queueing a dead letter queue (DLQ) is a service implementation to store messages that the messaging system cannot or should not deliver.[1] Although implementation-specific, messages can be routed to the DLQ for the following reasons:

  1. The message is sent to a queue that does not exist.[2][3]
  2. The maximum queue length is exceeded.
  3. The message exceeds the size limit.
  4. The message expires because it reached the TTL (time to live)[4]
  5. The message is rejected by another queue exchange.[5]
  6. The message has been read and rejected too many times.[6]

Routing these messages to a dead letter queue enables analysis of common fault patterns and potential software problems.[7] If a message consumer receives a message that it considers invalid, it can instead forward it an Invalid Message Channel,[8] allowing a separation between application-level faults and delivery failures.

Queueing systems that incorporate dead letter queues include Amazon EventBridge,[9] Amazon Simple Queue Service,[7] Apache ActiveMQ, Google Cloud Pub/Sub,[10] HornetQ, Microsoft Message Queuing,[2] Microsoft Azure Event Grid and Azure Service Bus,[11] WebSphere MQ,[12] Solace PubSub+,[13] Rabbit MQ,[5] Apache Kafka[14] and Apache Pulsar.[15][16]

See also

References

  1. "Dead Letter Channel". www.enterpriseintegrationpatterns.com.
  2. 1 2 Redkar, Arohi (2004). Pro MSMQ: Microsoft Message Queue Programming. Apress. p. 148. ISBN 1430207329.
  3. "Dead-letter queues". IBM. Retrieved 23 February 2014.
  4. "Dead Letter Exchanges — RabbitMQ". www.rabbitmq.com. Retrieved 2020-12-06.
  5. 1 2 RabbitMQ dead letter queue "Dead Letter Exchanges".
  6. "Amazon SQS dead-letter queues". AWS.
  7. 1 2 "Using Amazon SQS Dead Letter Queues". Amazon. Retrieved 23 February 2014.
  8. "Invalid Message Channel". www.enterpriseintegrationpatterns.com.
  9. "Amazon EventBridge announces support for Dead Letter Queues". Amazon.
  10. "Forwarding to dead-letter topics | Cloud Pub/Sub". Google Cloud. Retrieved 2020-12-26.
  11. spelluru. "Compare Azure messaging services". docs.microsoft.com. Retrieved 2020-01-17.
  12. Böhm-Mäder, Johannes (14 December 2011). WebSphere MQ Security: Tales of Scowling Wolves Among Unglamorous Sheep. BoD. p. 68. ISBN 978-3842381506.
  13. "Solace Dead Message Queues".
  14. "Apache Kafka documentation".
  15. "Apache Pulsar documentation".
  16. "Apache Pulsar PIP-22:Dead Letter Topic". GitHub.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.