AWS SQS (use cases)

Digambar Nandrekar
4 min readJan 18, 2023

What is Amazon Simple Queue Service?

Amazon Simple Queue Service (Amazon SQS) offers a secure, durable, and available hosted queue that lets you integrate and decouple distributed software systems and components. Amazon SQS offers common constructs such as dead-letter queues and cost allocation. It provides a generic web services API that you can access using any programming language that the AWS SDK supports.Amazon SQS supports both standards and FIFO queue.

Benefits of using Amazon SQS

  • Security — You control who can send messages to and receive messages from an Amazon SQS queue.
  • Server-side encryption (SSE) lets you transmit sensitive data by protecting the contents of messages in queues using keys managed in AWS Key Management Service (AWS KMS).
  • Durability — For the safety of your messages, Amazon SQS stores them on multiple servers. Standard queues support at-least-once message delivery, and FIFO queues support exactly-once message processing.
  • Availability — Amazon SQS uses redundant infrastructure to provide highly-concurrent access to messages and high availability for producing and consuming messages.
  • Scalability — Amazon SQS can process each buffered request independently, scaling transparently to handle any load increases or spikes without any provisioning instructions.
  • Reliability — Amazon SQS locks your messages during processing, so that multiple producers can send and multiple consumers can receive messages at the same time.
  • Customization — Your queues don’t have to be exactly alike — for example, you can set a default delay on a queue. You can store the contents of messages larger than 256 KB using Amazon Simple Storage Service (Amazon S3) or Amazon DynamoDB, with Amazon SQS holding a pointer to the Amazon S3 object, or you can split a large message into smaller messages.

Differences between Amazon SQS, Amazon MQ, and Amazon SNS

Amazon SQS and Amazon SNS are queue and topic services that are highly scalable, simple to use, and don’t require you to set up message brokers. We recommend these services for new applications that can benefit from nearly unlimited scalability and simple APIs.

Amazon MQ is a managed message broker service that provides compatibility with many popular message brokers. We recommend Amazon MQ for migrating applications from existing message brokers that rely on compatibility with APIs such as JMS or protocols such as AMQP, MQTT, OpenWire, and STOMP.

Who uses Amazon SQS?

How NASA use Amazon SQS service?

Amazon Simple Queue Service(SQS) is managed service that decouples tightly coupled pairs, microservices, and serverless applications. Simple Queue Service(SQS) works as middleware and helps to eliminate complexity.

Using Simple Queue Service we can store, send and receive the messages between two devices, without losing the data and without requiring the presence of a receiver device.

SQS provides two ways of messages sending:-

1) Standard way:- It means sending the data randomly.

2) FIFO Queue:- It means data will send in an orderly.

Using Simple Queue Service, we can trigger the processing pipelines when new content comes up without much delay.

We can integrate the Simple Queue service with S3 service, Lambda function, and cloud watch.

NASA uses a simple queue service for image and video processing. It helps to decouple incoming jobs from the pipeline process and the Amazon Notification service helps to trigger the events when new data come up from the developer side.

SQS Visibility Timeout

It is the amount of time that the message is invisible from the message queue after consumers consume the message.

The Default Visibility Time out is 30 seconds.

Important features of SQS:-

1) SQS is a pull-based service, not a push-based service.

2) Message size is 256 KB in size.

After pulling the message, always delete that request otherwise a single message came multiple times on a single device.

How BMW uses SQS?

The BMW Group is using AWS for its new connected-car application that collects sensor data from BMW 7 Series cars to give drivers dynamically updated map information. BMW Group is one of the leading manufacturers of premium cars and mobility services in the world, with brands such as Rolls Royce, BMW, and Mini. BMW built its new car-as-a-sensor (CARASSO) service in only six months leveraging Amazon Simple Storage Service (Amazon S3), Amazon Simple Queue Service (Amazon SQS), Amazon DynamoDB, Amazon Relational Database Service (Amazon RDS), and AWS Elastic Beanstalk. By running on AWS, CARASSO can adapt to rapidly changing load requirements that can scale up and down by two orders of magnitude within 24 hours. By 2018 CARASSO is expected to process data collected by a fleet of 100,000 vehicles traveling more than eight billion kilometers.

CARASSO stands for car-as-a-sensor ,and what it does is that it use sensors all around the car and making use of location , car speed and various other parameters, it transfers this data to cloud services (Here AWS) and they share this data with their map partners to process their map and update them with various feature like location , speed , time , date etc. and find the best car speed for a particular road.

🌍🌍🌍 Thanks for reading the article. 🌍🌍🌍

--

--

Digambar Nandrekar

DevOps | RHEL8 | Python | AI/ML | AWS | Docker | K8S |Ansible | Jenkins| Hadoop