Dead Letter Queue Estimator

Size DLQ capacity based on throughput and error patterns

Configuration

Baseline throughput
For storage estimation
Messages that fail
Before moving to DLQ
How long to keep messages
Per message

Scenarios

Capacity Estimates

DLQ Messages/Hour
36k
DLQ Storage/Day
864MB
Retry Amplification
4x
Time to Fill
5h

Alarm Thresholds (at capacity: 100GB)

Warning (50% - 50GB)
in ~24h
Critical (80% - 80GB)
in ~38h

Scenario Comparison

Normal
864 MB/day
Spike (5x throughput)
4,320 MB/day
Degraded (10% error)
8,640 MB/day

DLQ Growth Projection (14 days)

Retry Cascade Visualization

Cost Estimation

AWS SQS (million requests) $0.40
Storage (per GB/month) $0.10
RabbitMQ (disk/month) $5.00
Total Monthly Estimate $5.50

Infrastructure as Code

AWS SQS (CloudFormation)
AWSTemplateFormatVersion: '2010-09-09' Resources: MainQueue: Type: AWS::SQS::Queue Properties: QueueName: main-queue VisibilityTimeout: 300 MessageRetentionPeriod: 1209600 DeadLetterQueue: Type: AWS::SQS::Queue Properties: QueueName: main-queue-dlq MessageRetentionPeriod: 1209600 QueuePolicy: Type: AWS::SQS::QueuePolicy Properties: Queues: [!GetAtt MainQueue.Arn] RedrivePolicy: deadLetterTargetArn: !GetAtt DeadLetterQueue.Arn maxReceiveCount: 3
Terraform
resource "aws_sqs_queue" "main" { name = "main-queue" visibility_timeout_seconds = 300 message_retention_seconds = 1209600 redrive_policy = jsonencode({ deadLetterTargetArn = aws_sqs_queue.dlq.arn maxReceiveCount = 3 }) } resource "aws_sqs_queue" "dlq" { name = "main-queue-dlq" message_retention_seconds = 1209600 }
Docker Compose (RabbitMQ)
services: rabbitmq: image: rabbitmq:3.12-management ports: - "5672:5672" - "15672:15672" environment: RABBITMQ_DEFAULT_USER: guest RABBITMQ_DEFAULT_PASS: guest volumes: - rabbitmq_data:/var/lib/rabbitmq config-dlq: image: rabbitmq:3.12 command: | rabbitmq-plugins enable rabbitmq_management && \ rabbitmqctl add_queue main_queue && \ rabbitmqctl add_queue main_dlq && \ rabbitmqctl set_policy dlx_policy "^main_queue\$" \ '{"dead-letter-exchange":"dlx_exchange"}'

Recommended by our team

BeLikeNative.com

The #1 AI writing tool for freelancers — perfect grammar in any language, instantly.