Simple Queue Service
- Public, Fully Managed, Highly-Available Queues – Standard or FIFO
- Standard guarentee at least one delivery, order is not maintained, FIFO guarantee exactly once, order is maintained
- Messages up to 256KB in size – link to large data
- Received messages are hidden (VisibilityTimeout) then either reappear (re-try) or are explicitly deleted
- Dead-Letter queues can be used for problematic message
- ASG can scale and Lambdas invoke based on queues length
- SQS billed on ‘request’, 1 request = 1-10 messages up to 64KB total
- Encryption at rest & in-transit
SQS Standard vs FIFO:
FIFO:
- FIFO is 300 TPS w/o Batching, 3000 with
- need FIFO suffix for FIFO
- message is delivered exactly once
Standard:
- Standard is like multilane highway, near unlimited TPS
- faster
- order is not guarenteed
- message can be delivered more than once
SQS Delay Queues:
- make message hidden for x amount of seconds when added to the queue
- this is unlike VisibilityTimeout where message is hidden upon being received by consumer
SQS Dead-Letter Queues:
Imagine process that keeps failing, we need a way of handling this, this is where Dead-Letter Queue comes in. When ReceiveCount > maxReceiveCount & message isn’t deleted, it’s moved to Dead-Letter Queues.
Leave a comment