AWS Applications Flashcards
What is SQS?
SQS is a web service that gives you access to a messaging queue that can be used to store messages while waiting for a computer to process them.
What does SQS enable?
SQS enables the ‘decoupling’ of the components of an application so that they can run independently and easing message management between components.
What are the two types of SQS queue?
The two types of SQS queue are:
- Standard queues
- FIFO queues
How does SQS act as a buffer?
SQS provides a buffer between the component producing data and the component receiving the data.
The queue resolves issues that arise if the producer is producing work faster than the consumer can process it, or if the producer or consumer are only intermittently connected to the network.
What do SQS Standard Queues provide in terms of transactions per second and delivery guarantees?
A standard queue lets you have a nearly unlimited number of transactions per second and guarantee that a message is delivered at least once.
What is a potential downside to standard SQS queues?
A potential downside to standard SQS queues is that more than one copy of a message may be delivered out of order
What is a benefit of standard SQS queues?
Standard queues provide best-effort ordering which ensures messages are generally delivered in the same order as they are sent
What are FIFO queues?
FIFO ensures first in first out and exactly-once processing.
What type of queues support message groups?
FIFO queues support message groups that allow multiple ordered message groups within a single queue
What is the transaction per second limit for FIFO queues?
FIFO queues are limited to 300 transactions per second
Is SQS pull or push based?
SQS is pull based
What are the size of SQS messages?
SQS message size is 256kb
What are the retention periods for SQS messages?
Messages can be kept in the queue for 1 minute to 14 days, the default is 4 days
What is an SQS Visibility Timeout?
A visibility timeout is the amount of time that the message is invisible in the SQS queue after a reader picks up the message.
If the job is not processed within that time, the message will become visible again and another reader will process it which could result in the same message being delivered twice.
What is the visibility timeout maximum?
The visibility timeout maximum is 12 hours