Amazon Simple Queue Service
Developer Guide

The AWS Documentation website is getting a new look!
Try it now and let us know what you think. Switch to the new look >>

You can return to the original look by selecting English in the language selector above.

Amazon SQS Standard Queues

Amazon SQS offers standard as the default queue type. Standard queues support a nearly unlimited number of transactions per second (TPS) per API action. Standard queues support at-least-once message delivery. However, occasionally (because of the highly distributed architecture that allows nearly unlimited throughput), more than one copy of a message might be delivered out of order. Standard queues provide best-effort ordering which ensures that messages are generally delivered in the same order as they're sent.

For information about creating standard queues with or without server-side encryption using the AWS Management Console, the AWS SDK for Java (and the CreateQueue action), or AWS CloudFormation, see Creating an Amazon SQS Queue and Creating an Amazon SQS Queue with SSE.

You can use standard message queues in many scenarios, as long as your application can process messages that arrive more than once and out of order, for example:

  • Decouple live user requests from intensive background work – Let users upload media while resizing or encoding it.

  • Allocate tasks to multiple worker nodes – Process a high number of credit card validation requests.

  • Batch messages for future processing – Schedule multiple entries to be added to a database.

For limits related to standard queues, see Limits Related to Queues.

For best practices of working with standard queues, see Recommendations for Amazon SQS Standard and FIFO (First-In-First-Out) Queues .

Message Ordering

A standard queue makes a best effort to preserve the order of messages, but more than one copy of a message might be delivered out of order. If your system requires that order be preserved, we recommend using a FIFO (First-In-First-Out) queue or adding sequencing information in each message so you can reorder the messages when they're received.

At-Least-Once Delivery

Amazon SQS stores copies of your messages on multiple servers for redundancy and high availability. On rare occasions, one of the servers that stores a copy of a message might be unavailable when you receive or delete a message.

If this occurs, the copy of the message isn't deleted on that unavailable server, and you might get that message copy again when you receive messages. Design your applications to be idempotent (they should not be affected adversely when processing the same message more than once).