After 3 months working hard over the Christmas and New Year period, I’m excited to have finished my 3rd Pluralsight course. I’ve found meeting deadlines a little tougher for this course since I chose to take it on over the summer holidays. Here in New Zealand a lot of people take a decent break over the Christmas period, myself included. I managed to get this course completed just before the agreed deadline. *phew*

Message Queuing with Amazon Simple Queue Service (SQS)

I took this course on over the summer holidays because I’ve enjoyed working with Amazon SQS both inside and outside of work, so when the opportunity arose for someone in the Pluralsight family to take this course on, I jumped on it.

Let’s have a look at what’s included in this course.

Module breakdown

Introduction to Amazon SQS

This is the first of four modules in the course. I wanted to start with an introduction and an overview of Amazon SQS, I wanted to make sure we had a common understanding of Amazon SQS basics.

This module covers some of the benefits of using Amazon SQS. By understanding some of the benefits that come with using Amazon SQS, allows us to think about how we might apply it when building either a new application or when applying to an existing application.

To help us understand where we might apply Amazon SQS into our solution, we take a look at some use cases where Amazon SQS has been used.

  • Overview
  • Benefits of Using Amazon SQS
  • Common Examples of When to Use Amazon SQS
  • Summary
  • Understanding Amazon SQS

Understanding Amazon SQS

The second module in the course dives in a little deeper. When we are architecting and building solutions that work with and include Amazon SQS, we must understand how it works behind the scenes.  This module explains how Amazon SQS saves messages redundantly across multiple SQS servers to ensure your messages are stored safely. We go into how the Standard and FIFO queues work, I include diagrams that show how it all works.

We cover the different settings and options that we can use to optimize Amazon SQS. By knowing the options and settings that are available to us, will help us create a robust and well-architected solution. We are likely to avoid some of the common pitfalls that can occur with a lack of understanding.

After explaining each of Amazon SQS features, I then demo each feature within the Amazon Management Console.

The clips that are covered in this module are...

  • Basic Amazon SQS Architecture
  • Standard Queues
  • FIFO Queues
  • Amazon SQS Queue and Message Identifiers
  • Short and Long PollingDead-letter Queues
  • Visibility Timeout
  • Subscribing an SQS Queue to an SNS topic

Sending Messages to an SQS Queue with a .NET Core Web API

The last two modules of the course look at interacting with Amazon SQS from within our application.

We follow a story where our business is unable to handle spikes in traffic, we needed a way to handle this load.

We create a .NET Core 3.1 Web API, that adds messages to an Amazon SQS queue. This allows us to send back a success message to our customers early, while the heavy lifting is done once we read the messages of our SQS queue.

We cover..

  • Creating Your IAM Role
  • Installing the AWS Command Line Interface
  • .NET Core Web API Walk-through
  • Install NuGet Packages
  • Sending a Message to Your Amazon SQS Queue

Receiving Messages on an SQS Queue with a .NET Core Lambda Function

Our final module looks to consume our messages from our SQS queue using a .NET Core AWS Lambda.

This lambda is where we would do all the heavy lifting, for example, processing of the data, saving data to multiple databases etc.

This module looks at how we can easily create an AWS .NET Core Lambda, then deploy this to our Amazon.

  • Creating an IAM User and Role
  • Creating Your .NET Core Lambda Function
  • Deploying Your .NET Core Lambda Function
  • Testing the End-to-end Flow

Summary

I love creating content for Pluralsight. I’ve used Pluralsight for many years when starting as a Software Developer, there are many top Developers on this site that share their knowledge and I now I get to do the same, I count myself lucky to be able to do this.

I was able to complete this course in just under 3 months, it takes a lot of time and dedication while working a full-time job and looking after my children, but for me, it’s worth it in the end.

If you are looking to become a Pluralsight author or have any questions, let me know, you can follow me on twitter @donbavand.

I hope you enjoy and find this and my other courses useful.

Message Queuing with Amazon Simple Queue Service (SQS)