Sqs
AWS SQS message queue service for decoupled architectures.
Install
npx skills add itsmostafa/aws-agent-skills --skill sqs -g -a claude-code -y- Repository
- itsmostafa/aws-agent-skills1.2k
- Category
- DevOps
- Updated
- 9d ago
- License
- MIT
- Context cost
- Mediumabout 2,172 tokens
- Runs scripts
- No, instructions only
What it does
AWS SQS message queue service for decoupled architectures. Use when creating queues, configuring dead-letter queues, managing visibility timeouts, implementing FIFO ordering, or integrating with Lambda.
AWS SQS
Amazon Simple Queue Service (SQS) is a fully managed message queuing service for decoupling and scaling microservices, distributed systems, and serverless applications.
Table of Contents
Core Concepts
Queue Types
| Type | Description | Use Case |
|---|---|---|
| Standard | At-least-once, best-effort ordering | High throughput |
| FIFO | Exactly-once, strict ordering | Order-sensitive processing |
Key Settings
| Setting | Description | Default |
|---|---|---|
| Visibility Timeout | Time message is hidden after receive | 30 seconds |
| Message Retention | How long messages are kept | 4 days (max 14) |
| Delay Seconds | Delay before message is available | 0 |
| Max Message Size | Maximum message size | 256 KB |
Dead-Letter Queue (DLQ)
Queue for messages that failed processing after maxReceiveCount attempts.
Common Patterns
Create a Standard Queue
AWS CLI:
aws sqs create-queue \
--queue-name my-queue \
--attributes '{
"VisibilityTimeout": "60",
"MessageRetentionPeriod": "604800",
"ReceiveMessageWaitTimeSeconds": "20"
}'
boto3:
import boto3
sqs = boto3.client('sqs')
response = sqs.create_queue(
QueueName='my-queue',
Attributes={
'VisibilityTimeout': '60',
'MessageRetentionPeriod': '604800',
'ReceiveMessageWaitTimeSeconds': '20' # Long polling
}
)
queue_url = response['QueueUrl']
Create FIFO Queue
aws sqs create-queue \
--queue-name my-queue.fifo \
--attributes '{
"FifoQueue": "true",
"ContentBasedDeduplication": "true"
}'
Configure Dead-Letter Queue
# Create DLQ
aws sqs create-queue --queue-name my-queue-dlq

