At-Least-Once Delivery - A message in the queue is delivered at least once. Message delivery is guaranteed, no message is lost.[Text Wrapping Break]
Multiple components can work on a single queue. SQS uses a lock mechanism, if one component is using a message, it is made hidden to other components. Upon successful processing, message is deleted from the queue. If the message processing fails, it stays in the queue and is made visible to all the components. This feature is called Visibility Timeout.
There are two types of queues - Standard and FIFO. In standard queue the messages are picked up randomly. It might not be in the order it entered the queue while FIFO queue uses first-in-first-out, it ensures the order.
For the messages that cannot be processed are kept in dead-letter queue.
Billing is done based on the number of requests to the queue. SQS is a good service to be used for applications to increase efficiency, reliability and performanc