AWS SQS and NASA Integration

Srasthy Chaudhary
3 min readMar 1, 2021

--

National Aeronautics and Space Administration (NASA), established in 1958 and has been working around the world for almost 60 years.

The NASA Image and Video Library is a cloud-native solution, with the front-end web app separated from the backend API. It runs as immutable infrastructure in a fully automated environment, with all infrastructure defined in code to support continuous integration and continuous deployment (CI/CD).

The NASA Image Library uses SQS & SNS to separate the front-end web app from the backend API.

So, What is SQS?

Amazon Simple Queue Service (SQS) is a fully managed message queuing service.

SQS enables you to decouple and scale microservices, distributed systems, and serverless applications.

Asynchronous workflows have always been the primary use case for SQS. Using queues ensures one component can keep running smoothly without losing data when another component is unavailable or slow.

Amazon SQS works on the concept of messaging queue with minor enhancements. Producer creates a message and puts it into a queue. We can have multiple producers and add multiple messages to the queue at the same time — you don’t have to worry about the traffic or peaks, SQS handles that for you.

SQS offers two types of message queues-

Standard queues offer maximum throughput, best-effort ordering, and at-least-once delivery.

FIFO queues are designed to guarantee that messages are processed exactly once, in the exact order that they are sent.

Benefits-

  1. Eliminate administrative overhead
  2. Reliably deliver messages
  3. Keep sensitive data secure
  4. Scale elastically and cost-effectively

How NASA is using AWS Services?

In building the solution of NASA Image and Video Library, ManTech International took advantage of the following AWS services:

Amazon Elastic Compute Cloud

It provides secure, resizable compute capacity in the cloud. This enables NASA to scale up under load and scale down during periods of inactivity to save money and pay for only what it uses.

Elastic Load Balancing

It is used to distribute incoming traffic across multiple Amazon EC2 instances, as required to achieve redundancy and fault-tolerance.

Amazon Simple Storage Service

It supports object storage for incoming (uploaded) media, metadata, and published assets.

Amazon Simple Queue Service

Amazon SQS is used to decouple incoming jobs from pipeline processes.

Amazon Relational Database Service

Amazon RDS is used for automatic synchronization and failover.

Amazon DynamoDB

It is a fast and flexible NoSQL database service, which is used to track incoming jobs, published assets, and users.

Amazon Elastic Transcoder

It is used to transcode audio and video to various resolutions.

Amazon CloudSearch

It is used to support searching by free text or fields.

Amazon Simple Notification Service

Amazon SNS is used to trigger the processing pipeline when new content is uploaded.

AWS CloudFormation

It enables automated creation, updating, and destruction of AWS resources. ManTech International also used the Troposphere library, which enables the creation of objects via AWS CloudFormation using Python instead of hand-coded JSON — each object representing one AWS resource such as an instance, an Elastic IP (EIP) address, or a security group.

Amazon CloudWatch

It provides a monitoring service for AWS cloud resources and the applications running on AWS.

So, all the space enthusiasts, go & enjoy the mesmerizing & captivating view of our beautiful universe on NASA’s Image & Video Library hosted on the AWS Cloud platform!!

Sign up to discover human stories that deepen your understanding of the world.

Free

Distraction-free reading. No ads.

Organize your knowledge with lists and highlights.

Tell your story. Find your audience.

Membership

Read member-only stories

Support writers you read most

Earn money for your writing

Listen to audio narrations

Read offline with the Medium app

--

--

No responses yet

Write a response