Amazon SQS

3 Things: Developing Amazon SQS Based Solutions

Amazon Simple Queue Service or Amazon SQS is a distributed message queuing service that enables developers to build loosely coupled solutions. Often valued for its ease of use, Amazon SQS queues can be spun up in a matter of seconds from the AWS console, SDK or the CLI. Still, there are subtleties that developers should be aware of when developing solutions with Amazon SQS.

Photo by Shumilov Ludmila on Unsplash

Encryption

Messages stored in an Amazon SQS queue is data at rest. And, we can protect that data by encrypting it with KMS keys, just like we would if we were going to protect data in an Amazon S3 bucket or an Amazon SNS topic. With Amazon SQS Server-side encryption, messages are encrypted when they are received by SQS and are decrypted when delivered to a message consumer that is authorized for the SQS message queue and the KMS key.

How to Implement the Pub/Sub Pattern with .NET, Amazon SNS and CloudEvents

There is no shortage of technologies that allow for building pub-sub messaging systems. Off the cuff, I can think of NServiceBus, Azure Service Bus, RabbitMQ, MassTransit, etc. However, Amazon Simple Notification Service or SNS, may be the easiest to implement as well as the most flexible solution.  

What Exactly is the Pub-Sub Pattern?

In essence, the pub-sub pattern or publish-subscribe pattern, is a messaging pattern in software architecture where a publisher creates a message and sends it to a predetermined location for one or more subscribers to consume. The predetermined location has different names and has differing structures in different systems. However, in this tutorial we will refer to that predetermined location as a “topic”. To look at it from the consumer’s perspective, a consumer would subscribe to a topic of interest and when the publisher publishes a message to the topic, the consumer and any other subscribed consumers would receive the message.

Create an SQS Queue and an SNS Topic and Subscription using the AWS CLI

AWS gives engineers many ways to accomplish many tasks. Here we will look at creating both a Simple Notification Service topic as well as a Simple Queue Service queue and then creating an SNS subscription “linking” the two. All the while, we will exclusively use the AWS CLI to accomplish the task. This exercise could also be carried out in  the AWS console as well as one of the AWS SDKs and if you are proficient in an AWS SDK or the console, feel free to use one of those tools to view the changes being made while we move through this solution.

Create an AWS SQS Queue from the Console

This is a multipart series on Interapplication Messaging with .NET and AWS Simple Queue Service (SQS). Checkout all tutorials in the series.

Warning: some AWS services may have fees associated with them.

Simple Interapplication Messaging with .NET and AWS Simple Queue Service
Create an AWS SQS Queue from the Console
Creating a Simple .NET AWS SQS Message Producer Application
Create a Simple .NET Application to Consume an AWS SQS Queue

Creating an SQS queue through the AWS console is straightforward. In a future tutorial we will expand on these concepts and create an SQS queue from the the CLI.

Create a Simple .NET Application to Consume an Amazon SQS Queue

This is a multipart series on Interapplication Messaging with .NET and AWS Simple Queue Service (SQS). Checkout all the tutorials in the series.

Simple Interapplication Messaging with .NET and AWS Simple Queue Service
Create an AWS SQS Queue from the Console
Creating a Simple .NET AWS SQS Message Producer Application
Create a Simple .NET Application to Consume an AWS SQS Queue

In the last post, we focused on creating a .NET console application that created a message and then sends it to an Amazon SQS queue. In this post, we will turn our sights to creating an application that consumes messages from an Amazon SQS queue.

Creating a Simple .NET Amazon SQS Message Producer Application

This is a multipart series on Interapplication Messaging with .NET and AWS Simple Queue Service (SQS). Checkout all articles in the series.

Simple Interapplication Messaging with .NET and AWS Simple Queue Service
Create an AWS SQS Queue from the Console
Creating a Simple .NET AWS SQS Message Producer Application
Create a Simple .NET Application to Consume an AWS SQS Queue

In interapplication messaging there are at least two parties that participate and those parties can be classified as producers and consumers. In this tutorial we will focus on the message producer or the party that creates and sends a message to a queue.

Simple Interapplication Messaging with .NET and Amazon Simple Queue Service

Amazon Simple Queue Service, a.k.a. SQS, is a message queuing service that allows for building loosely coupled applications and services and features high availability and nearly unlimited throughput.

In this series of tutorials, we will create and configure an SQS queue and then develop .NET Core producer and consumer applications that send messages and receive messages, respectively.

Warning: some AWS services may have fees associated with them.

Simple Interapplication Messaging with .NET and AWS Simple Queue Service
Create an AWS SQS Queue from the Console
Creating a Simple .NET AWS SQS Message Producer Application
Create a Simple .NET Application to Consume an AWS SQS Queue