Amazon SQS
What is it?
Amazon SQS is AWS's fully managed message queue service for passing messages between components reliably without running your own queue server.
Explain like I'm 5
Why was it created?
Running and scaling your own message queue is work. SQS was created to provide a reliable, scalable queue as a managed service.
Where is it used?
- Background job queues
- Decoupling microservices
- Buffering traffic spikes
- Reliable task delivery on AWS
Why should developers care?
SQS is a go-to building block for decoupled, asynchronous AWS systems, so cloud developers use it often.
How does it work?
Producers send messages to a queue; consumers poll and process them, then delete them when done. SQS stores messages durably, scales automatically, and offers standard (high-throughput) and FIFO (ordered) queue types.
Real-world example
A web app drops 'resize image' messages onto an SQS queue, and worker processes pull and handle them independently, smoothing out bursts.
Common use cases
- Asynchronous task processing
- Decoupling producers/consumers
- Absorbing spikes
- Reliable work distribution
Advantages
- Fully managed and scalable
- Reliable, durable delivery
- Decouples components
- Standard and FIFO options
Disadvantages
- Consumers poll (not pushed)
- Standard queues allow duplicates/out-of-order
- AWS-specific
- Not a replayable event log
When should you use it?
When you need a reliable, managed queue to decouple and buffer work on AWS.
When should you avoid it?
For one-to-many broadcast (use SNS) or replayable event streams (use Kafka/Kinesis).
Alternatives
Related terms
Interview questions
Beginner
- What is Amazon SQS?
- What is a message queue?
Intermediate
- What's the difference between standard and FIFO queues?
- How do consumers get messages from SQS?
Senior
- How do you handle duplicate messages from a standard queue?
- When would you use SQS versus SNS?
Common misconceptions
- "SQS pushes messages to consumers" — consumers poll the queue for messages.
- "SQS guarantees exactly-once, ordered delivery" — standard queues are at-least-once and unordered; FIFO adds ordering.
Fun facts
- SQS stands for Simple Queue Service.
- FIFO queues preserve order and exactly-once processing; standard queues favor throughput.
Timeline
- 2006 — SQS launches as one of AWS's earliest services
Learning resources
Quick summary
Amazon SQS is a fully managed message queue for reliably passing work between components on AWS, with standard and FIFO queue types.
Cheat sheet
- Managed message queue
- Decouples + buffers work
- Standard (throughput) vs FIFO (ordered)
- Consumers poll for messages