Today we will discuss about an AWS messaging service called SQS.
- SQS is Simple Queue Service.
- It’s a messaging queue service which acts like a buffer between message producing and message receiving components.
- Using SQS you can decouple the components of an application.
- Messages can contain upto 256 KB of text in any format.
- Any component can later retrieve the messages programmatically using the SQS API.
- SQS queues are dynamically created and scale automatically so you can build and grow applications quickly – and efficiently.
- You can combine SQS with auto scaling of EC2 instances as per warm up and cool down.
- Used by companies like Vodafone, BMW, RedBus, Netflix etc.
- You can use Amazon SQS to exchange sensitive data between applications using server-side encryption (SSE) to encrypt each message body.
- SQS is pull(or poll) based system. So messages are pulled from SQS queues.
- Multiple copies of every message is stored redundantly across multiple availability zones.
- Amazon SQS is deeply integrated with other AWS services such as EC2, ECS, RDS, Lambda etc.
Two types of SQS queues:-
- Standard Queue
- FIFO Queue
Standard Queue :-
- Standard Queue is the default type offered by SQS
- Allows nearly unlimited transactions per second.
- Guarantees that a message will be delivered at least once.
- But it can deliver the message more than once also.
- It provides best effort ordering.
- Messages can be kept from 1 minute to 14 days. Default is 4 days.
- It has a visibility time out window. And if order is not processed till that time, it will become visible again and processed by another reader.
FIFO Queue :-
- FIFO queue complements the standard queue.
- It has First in First Out delivery mechanism.
- Messages are processed only once.
- Order of the message is strictly preserved.
- Duplicates are not introduced in the queue.
- Supports message groups.
- Limited to 300 transactions per second.
Hope the above snapshot give you a decent understanding of SQS. If you want to try some handson check this tutorial .
This series is created to give you a quick snapshot of AWS technologies. You can check about other AWS services in this series over here .