Use Case for AWS SQS Queues should have a redrive queue configured
Quick Links
- Configure AWS SQS Queues should have a redrive queue configured
- Use Case for AWS SQS Queues should have a redrive queue configured
- Triage Guides by Violation Type
Should I configure a DLQ / redrive policy for my AWS SQS Queue?
Pros
- Dead-letter queues (DLQs) assist in debugging by isolating unconsumed messages for examination (Amazon SQS dead-letter queues).
- DLQs are instrumental for monitoring and alerting on message failures, enhancing the system's reliability and transparency.
- DLQs can decrease overall message volume and mitigate the risk of disruptive "poison pill", or unprocessable messages. Without a DLQ, you're unable to set the
maxReceiveCount
property to limit the number of times a message can be received. Limiting receives potentially reduces cost and increases system reliability (When should I use a dead-letter queue?). - DLQs are beneficial when applications do not depend on the sequence of messages (When should I use a dead-letter queue?).
Cons
- DLQs must match the type (FIFO or standard) of their parent queues (How do dead-letter queues work?).
- DLQs and their associated queues need to be created within the same AWS account and region (How do dead-letter queues work?).
- Message expiration in a DLQ relies on the original enqueue timestamp, necessitating a sufficiently extended retention period to prevent premature deletion (How do dead-letter queues work?).
- DLQs are unsuitable for situations where continuous retrying of message transmission is required (When should I use a dead-letter queue?).
- DLQs are not advisable for FIFO queues when the precise order of messages is critical (When should I use a dead-letter queue?).