Setting the right foundation
In this course I have chosen to cover the following 6 AWS services: SQS, SNS, DynamoDB, S3, Secrets Manager and Lambda.
The reason why these services were chosen is because they are some of the most popular AWS services that people who build production-ready, high-scale systems use and they are all bespoke AWS services that you can't run on any other cloud provider.
As someone who has used them extensively to build systems serving millions of users and thousands of requests per second, I am here to take you beyond the documentation and show you all the tips and tricks as well as the pitfalls that you could fall into if you are not careful.
Curriculum
Available in
days
days
after you enroll
Available in
days
days
after you enroll
Available in
days
days
after you enroll
- What is a queue? (4:01)
- Creating our first Queue in SQS (4:38)
- Publishing through the UI (2:42)
- Creating a message publisher (6:18)
- Creating a message consumer (5:26)
- The API we will be working on (2:03)
- Adding message publishing (10:03)
- Implementing a consumer in ASP.NET Core (5:37)
- Refactoring the consumer (8:38)
- What happens when things go wrong? (2:20)
- What is a dead letter queue? (2:34)
- Creating a dead letter queue (3:02)
- Redriving dead messages (2:00)
- Section recap (0:41)
Available in
days
days
after you enroll
- What is SNS? (3:49)
- Creating our first topic in SNS (2:04)
- Publishing through the UI (4:41)
- Creating a message publisher (2:33)
- Creating a message consumer (1:03)
- Consuming on multiple apps (2:06)
- Where we left off with SQS (0:46)
- Re-implementing the publisher (4:26)
- Implementing an in-app filter (1:28)
- Introducing message attribute based filtering (2:08)
- Introducing body based filtering (1:26)
- Section recap (0:25)
Available in
days
days
after you enroll
- What is DynamoDB? (3:51)
- What is the Partition Key? (3:33)
- What is the Sort Key? (1:21)
- Creating a DynamoDB table (1:58)
- Getting to know the UI (2:34)
- Understanding DynamoDB Capacity (4:04)
- The API we will introduce DynamoDB to (0:42)
- Implementing data access to DynamoDB (8:49)
- The issue with scanning (2:35)
- Conditional operations (5:51)
- Transactions (5:08)
- What are secondary indexes? (0:50)
- Global secondary index (1:56)
- Creating and using a GSI (6:56)
- Local secondary index (1:59)
- Creating and using an LSI (2:23)
- What are DynamoDB Streams? (1:30)
- Understanding autoscaling (4:32)
- Pricing cost savings (1:53)
- Section recap (0:46)
Available in
days
days
after you enroll
- What is AWS S3? (1:36)
- Creating our first Bucket (1:51)
- Uploading and accessing data manually (2:04)
- Uploading data using C# (3:23)
- Downloading and processing data using C# (2:34)
- The API we will be adding S3 support to (0:41)
- Implementing file uploading (4:58)
- Implementing file retrieval (2:02)
- Implementing file deletion (1:32)
- Reacting to changes (0:33)
- Bucket versioning (1:08)
- Section recap (0:34)
Available in
days
days
after you enroll
Available in
days
days
after you enroll
- What is serverless and Lambda? (1:31)
- Creating our first Lambda (3:11)
- The .NET Lambda CLI tool (1:00)
- Installing the .NET Lambda templates (0:54)
- The concept of triggers and destinations (4:00)
- Creating our first C# lambda (3:25)
- Creating a simple HTTP API (3:21)
- Debugging Lambdas locally (3:43)
- Consuming an SQS Queue using Lambda (5:00)
- Consuming an SNS Topic using Lambda (2:26)
- Triggering a Lambda with DynamoDB (3:49)
- Triggering a Lambda with S3 (7:04)
- Converting an ASP.NET Core API to an AWS Lambda (2:32)
- Building a Custom Runtime Lambda (2:15)
- Section recap (0:28)
Available in
days
days
after you enroll