jargon

Comparison

Dead letter queuevsPoison message

Dead letter queue

the message failed five times so it gets moved somewhere else, instead of blocking the queue forever by being retried in a loop.

A separate destination for messages that exceeded their retry limit. It keeps one bad message from consuming the consumer's entire capacity and preserves the payload for inspection. A DLQ nobody alerts on or drains is just a slower way to lose the message.

Full entry →

Poison message

one malformed payload keeps crashing the consumer, gets redelivered, crashes it again, and the whole queue stops moving.

A message that reliably fails processing and, under at-least-once redelivery, blocks or consumes the consumer indefinitely. It is the specific failure a dead letter queue and a redelivery count exist to contain. It is also why a consumer should distinguish retryable failures from permanent ones rather than retrying everything.

Full entry →

Related comparisons