Process Amazon SNS Notifications with AWS Lambda

Lab Steps

lock
Logging in to the Amazon Web Services Console
lock
Creating an Amazon SNS Topic
lock
Creating an AWS Lambda Function
lock
Implementing an AWS Lambda Function to Upload to S3
lock
Publishing a Message to a Amazon SNS Topic
lock
Verifying the AWS Lambda Function Processed the Message

Ready for the real environment experience?

DifficultyBeginner
Time Limit1h 30m
Students5880
Ratings
4.3/5
starstarstarstarstar-half

Description

Amazon Simple Notification Service (SNS) is a fully-managed, highly-scalable service that facilitates message delivery using a publish/subscribe model. You can use Amazon Simple Notification Service (SNS) to send messages to email recipients, webhooks, or mobile devices via SMS or push notifications.

With Amazon SNS, you can deliver an unlimited number of notifications without worrying about scaling up. You can use AWS Lambda to customize how messages are processed and integrate messaging with your other AWS resources or 3rd-party services.

In this Lab, you will learn how to process SNS notifications with a Lambda Function. As a simple example, you will use Python to upload a file to AWS Simple Object Storage (S3) in response to a message you publish to SNS.

Learning Objectives

At the end of this lab, you will be able to:

  • Create an SNS topic
  • Create a Lambda function
  • Configure SNS to trigger your Lambda function
  • Publish a message in SNS
  • Verify that Lambda processed your SNS message

Intended Audience

This Lab is intended for:

  • Developers
  • CloudEngineers

Prerequisites

This is a beginner-level Lab, you should have a conceptual understanding of:

  • The publish/subscribe messaging model
  • Serverless functions

Familiarity with the following AWS services will be helpful but is not required:

  • Simple Notification Service (SNS)
  • Lambda
  • Simple Storage Service (S3)

Updates

March 9th, 2021 - Updated AWS Lambda instructions and screenshots to reflect the latest user-interface changes

May 1st, 2020 - All instructions and screenshots updated

January 10th, 2019 - Added a validation Lab Step to check the work you perform in the Lab

Environment before
PREVIEW
arrow_forward
Environment after
PREVIEW
About the Author
Students31372
Labs75
Courses2
Learning paths2

Andrew is a Labs Developer with previous experience in the Internet Service Provider, Audio Streaming, and CryptoCurrency industries. He has also been a DevOps Engineer and enjoys working with CI/CD and Kubernetes.

He holds the Developer - Associate, Sysops Administrator - Associate, and Solutions Architect – Associate AWS certifications.

Learning Pathnavigation