Amazon SQS Industry Case Study…

Amazon Simple Queue Service (SQS)..

SQS

Hello All..!!

In this article we are look towards the new service of AWS and that is Simple Queue Service (SQS).And there industry use cases.

Before that we have to learn little bit our What is actually a AWS SQS…??

SQS is almost universally underestimated, but AWS’s oldest service is imbued with subtle power and complexity. Power to process messages at incredible velocity, and the complexity of API calls involving implicit state and/or side-effects. Keep reading to get the low-down on SQS.

Simple Queue Service..

Queue

Amazon Simple Queue Service (SQS) is offered by Amazon Web Services ( AWS) as a managed message queue service. It provides an HTTP API through which items can be submitted to and readout of a queue by apps. AWS fully manages the queue itself, making SQS an easy solution for passing messages between different components of software systems running in the cloud.

Amazon Simple Queue Service (SQS) is a fully managed message queuing service that enables you to decouple and scale microservices, distributed systems, and serverless applications. SQS eliminates the complexity and overhead associated with managing and operating message oriented middleware, and empowers developers to focus on differentiating work. Using SQS, you can send, store, and receive messages between software components at any volume, without losing messages or requiring other services to be available.

AWS SQS (Amazon Simple Queue Service) is a service which helps to align the message. Moreover, it also helps to enable the user to separate and scale microservices, distributed system, and serverless applications. Amazon SQS makes it easy to manage the operating message-oriented middleware and enhances the developers to focus on their work. Amazon Simple Queue Service works at any volume without losing the message or requiring other services to be available. It helps to send, store, and receive messages between software components. AWS SQS can start with the help of the tools such as Amazon Console, command line interface, and SDK.

In Amazon SQS there are two types of queues which are Standard Queue and AWS SQS FIFO. Standard queue offers at least one delivery and maximum throughput. The FIFO queues guarantee that the processed message takes place only once in the first in first out basis.

Why SQS..??

SQS Queue

Not “why SQS?’ but “why write about it?”. I assume you have some (or more) understanding of what a queue is, and probably already use SQS so there is no need for me to (re-)document the simple API for you.

My “why” is that I was asked to review changes to a message handling system. The system needed to be upgraded to delay message processing to “daytime hours” as defined by a local time zone. The answer was “it already can” because it was using SQS — something the original developers didn’t realize.

I thought I’d just find a quality article on the subject, but surprisingly I couldn’t find a good one so I slapped together some sequence diagrams to demonstrate the concepts. In a nutshell, if you’re using SQS and don’t understand exactly what “In Flight” means, or how long “Message Visibility” is (and under what condition) then this might be helpful.

SQS Working..

SQS provides a message-submitting API endpoint and another endpoint to read messages from a queue. Each message can only be retrieved once, and at the same time, you can have many customers submit messages and read messages from a queue.

Unformatted strings, XML, or JSON may be the messages that SQS manages. Since SQS guarantees delivery exactly once, and since you can send messages to and read messages from a given queue simultaneously, SQS is a good choice for integrating multiple independent systems.

You might well be asking: if you can provide an internal HTTP API for might service, why use SQS? Although HTTP APIs are an easy way to connect external users to software systems, when it comes to strictly internal systems integration, they are not the most powerful tool. A message queue is a lighter one. SQS also manages items such as automatic retries, maintaining queue status in AWS across various availability zones, and keeping track of expiry timeouts on all messages, in particular.

In Amazon SQS there are two types of queues which are Standard Queue and AWS SQS FIFO. Standard queue offers at least one delivery and maximum throughput. The FIFO queues guarantee that the processed message takes place only once in the first in first out basis.Standard queues offer maximum throughput, best-effort ordering, and at-least-once delivery. SQS FIFO queues are designed to guarantee that messages are processed exactly once, in the exact order that they are sent.

A. Standard Queue

  • It has a benefit of supporting an ample amount of transactions per second per API action.
  • As the message is delivered on at a time but at the same time, it delivers more than one copy of a message.
  • It may happen that the message delivered is in the different order from the source in which they were sent.

B. FIFO Queue

  • It has a high throughput which can send 300 messages per second which include 300 send, receive, and delete operation per second.
  • The message is not duplicated it is stored with the customer until and unless customer deletes it.
  • The messages are treated in first in first out order as the message sent and received is strictly preserved.

Top Companies use SQS

· EMS Driving Fuel IQ

· NASA

· BMW

· CapitalOne

· CHANGE HEALTHCARE

· Oyster hotel reviews

· Redbus

EMS Driving Fuel IQ

Petroleum retailers in Australia are improving the performance and safety of their service stations with an AWS IoT–enabled solution called Fuelsuite from EMS. EMS specializes in solutions that provide petrol retailers with performance data gathered from sensors located around petrol stations. Fuelsuite uses AWS IoT Device Management to control the edge devices collecting petrol station data, processes the data with Amazon EC2, and scheduling messages to and from the edge devices by using Amazon SQS.

NASA

The NASA Image and Video Library provides easy access to more than 140,000 still images, audio recordings, and videos — documenting NASA’s more than half a century of achievements in exploring the vast unknown. The architecture includes Amazon SQS to decouple incoming jobs from pipeline processes and Amazon Simple Notification Service to trigger the processing pipeline when new content is updated.

BMW

The BMW Group is using AWS for its connected car application that collects sensor data from BMW 7 Series cars to give drivers dynamically updated map information. BMW built its new car-as-a-sensor (CARASSO) service in only six months leveraging Amazon SQS, Amazon S3, Amazon DynamoDB, Amazon RDS, and AWS Elastic Beanstalk.

CapitalOne

Capital One is modernizing its retail message queuing by migrating from self-managed message-oriented middleware systems to Amazon SQS. Capital One is using SQS to migrate several core banking applications to the cloud to ensure high availability and cost efficiency while simplifying administrative complexity and overhead.

CHANGE HEALTHCARE

Change Healthcare uses AWS services like Amazon EC2, Amazon S3, Amazon SQS, and Amazon SNS to handle millions of confidential transactions daily from its clients while maintaining full compliance with healthcare industry regulations, including HIPAA.

RedBus

redBus is expanding theirAWS solution to include Amazon SQS and SNS for monitoring, alerts, and intercommunication. “Amazon SQS is an especially good solution for enabling messaging between external applications and our applications.” — Charan Padmaraju, redBus CTO

Oyster hotel reviews

Oyster.com uses Amazon Web Services to store and process images for their website. The team uses Amazon EC2 and Amazon SQS in an integrated workflow to generate the sizes they need for each photo. SQS communicates the photos that need to be processed and the status of the jobs.

Benefits of Amazon Simple Queue Service..

These are the 4 benefits of Amazon SQS, let’s discuss them :

1. Eliminate Administrative Overhead

AWS manages all in progress operations and underlying infrastructure required to produce an extremely accessible and scalable message queuing service. With AWS SQS, there’s no direct value, no ought to acquire, install, and assemble messaging package, and no long build-out and maintenance of supporting infrastructure. Amazon SQS queues are dynamically created and scale automatically, therefore, you’ll be able to build and grow applications quickly and with efficiency.

2. Reliably Deliver Messages

Use AWS SQS to transmit any volume of data, at any level of output, while not losing messages or requiring alternative services to be accessible. Amazon SQS helps you to decouple application parts in order that they run and fail severally, increasing the fault tolerance of the system. Multiple copies of each message area unit hold on redundantly across multiple accessible zones in order that they’re out there whenever required.

3. Keep Sensitive Information Secure

You can use Amazon SQS to exchange sensitive data between applications using server-side secret writing (SSE) to inscribe every message body. The AWS SQS compass point integration with AWS Key Management Service (KMS) permits you to centrally manage the keys that defend SQS messages together with keys that defend your alternative AWS resources. AWS KMS logs each use of your encryption keys to AWS CloudTrail to assist meet your restrictive and compliance wants.

4. Scale Elastically and Cost-Effectively

AWS SQS leverages the AWS cloud to dynamically scale supported demand. Amazon SQS scales elastically together with your application. Therefore, you don’t have to worry regarding capability designing and pre-provisioning. There’s no limit to the number of messages per queue, and commonplace queues offer nearly unlimited output. Prices area unit supported usage that provides important value saving versus the “always-on” model of self-managed electronic messaging middleware.

BMW Use AWS 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.

BMW Group using AWS Services to leverage better services to user.

BMW group believes disruption leads to new opportunities. The factors which leads are

  • More software and services
  • Cloud Solutions augment the power of IT infrastructure.
  • Agile and real-time innovation
  • Deep personalization and engagement
  • New competitors

The cloud based solutions allows directly engage with the consumers. BMW group has invested in AWS to leverage better performance and services.

Intelligent Connectivity and Data Processing — Learning Maps

All the BMW connected cars collects the data from the inbuilt sensors and it dumps in the AWS cloud. Now, this data is further processed and provides a dynamically updated Digital Map which helps to the drivers or other connected systems for forecasting and can also help in Autonomous Driving.

The major benefits are:

  • Accurate speed limit
  • Improved Road Geometries
  • Fewer map errors
  • Optimized routes

The BMW Group calls this integration of cloud based solution like AWS as Car as a Service. They gave name to this model as CARASSO.

Here, the main role of AWS SQS comes in play. Let’s understand the architecture first.

The architecture has a service deployed through route 53. All the cellular data is being fetched by this service. And there are Load Balancer at first which takes the data and pass it to its backend servers. This server is deployed by Elastic BeanStalk and is known as Receiver Servlet. At this point the data is being stored in a SQS Queue. As the data is coming from real time, if the worker servlet goes down then the entire workflow fails. So when the data is received at Receiver Servlet, it is put into separate queues according to the processing done on the data. Here, there are two queues, one the Worker Queue SQS and the other is Chunk Buffer S3. The worker servlet keeps on polling for the messages to the SQS queue and receives the message and perform the operation. After it fetches message from SQS, it deletes the message. Now, the processed data is stored in RDS Database and further it is managed into the DynamoDB. The processed data from the Worker Servlet helps to create the Map Data. The Map data is updated and provided to the user via cellular. Thus, in this CARASSO model, SQS play very important role as it helps to manage the data/messages. So, it provides Agility, Flexibility and Scalability.

So That’s all guys , it’s all about the SQS service of AWS.

So I hope you got some idea about Simple Queue Service (SQS) of AWS and Use Case Of it in BMW.

So if you like it then clap and share..!!

And you have any suggestion regarding to this article then contact me on LinkedIn..

Thank you for reading the article.. :)

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store