Serverless Architecture Use Cases

A free video tutorial from Riyaz Sayyad
Best Selling Instructor, Tech Evangelist at Rizmax Software
4.5 instructor rating •
3 courses •
38,437 students
Learn more from the full course
AWS Lambda & Serverless Architecture Bootcamp (Build 5 Apps)AWS Serverless with AWS Lambda, API Gateway, Amazon DynamoDB, Step Functions, SAM, the Serverless Framework, CICD & more
25:23:00 of on-demand video • Updated December 2019
- Master AWS Lambda, API Gateway, DynamoDB, and Step Functions from the ground up (Full of Demos and Hands On)
- Streamline your development and deployment with AWS SAM as well as the Serverless Framework
- Automate serverless deployment with AWS CI/CD tools like CodeCommit, CodeBuild and CodePipeline
- Build Serverless REST API, Web App, Android and iOS Mobile Apps, Alexa Skill, IoT App and more
- Integrate different services like S3, Kinesis, SNS, SQS and more in your serverless projects
- Implement OAuth 2.0 Authentication and Authorization with AWS Cognito
- Document your serverless APIs using API Gateway and Swagger
- Learn Serverless Best Practices
English
Let’s look at some of use cases for serverless
applications. The serverless architecture allows us to
build just about any type of application or back-end service that you can think of. Let’s go over some of the most common use
cases where you can use serverless architecture. The first and the most prominent one is application
backends. Serverless allows you to build backends for
Web, Mobile or even IoT applications. And later in this course, we’ll build all
these three types of backends together, with hands on. Serverless web applications and their backends
typically make use of AWS Lambda, API Gateway, DynamoDB, S3 or even Step Functions as needed. End-users might interact with your applications
through web, mobile smartphones, or even IoT devices. These frontends act as event sources to trigger
our lamda code. Each incoming request from the end user is
typically received by one of the endpoints exposed by API Gateway. API Gateway then triggers a call to Lambda
function and Lambda function then coordinates with different web services like S3 or DynamoDB
to generate a response and then return that response back to the end user, possibly through
the same channel like API Gateway. Amazon S3 can also be used to create the app front-end
in this case. These frontends are wired to the serverless
backends by means of APIs that we create using the API Gateway. Such applications could have very unpredictable
usage patterns with, for example periods of extremely high user traffic followed by minimal to no traffic. And your application must be geared to handle
these spikes in traffic without the need for any expensive infrastructure. With AWS Lambda, your applications can scale
on demand and you pay only for what you use. And in most cases, such serverless applications
require almost zero administration. Another use case for serverless architecture
is real-time data processing systems or streaming data processing systems. You can use Amazon Kinesis or Kinesis Firehose
with Lambda, DynamoDB and S3 to create your real-time data processing systems. These systems typically have variable workloads
and serverless approach helps here by helping with the automatic scaling during high workloads
and then scaling down and saving costs during the idle time. Amazon Kinesis is a service that lets you
collect, process and analyze real-time streaming data from multiple sources, at absolutely any scale. And, you can literally process terabytes of data
every hour, coming in from thousands and thousands of sources simultaneously. For example, social media streaming data from
several sources can be loaded into Kinesis simultaneously and then processed in real-time
using AWS Lambda and DynamoDB. Kinesis also provides Data Analytics services
that can be used to build Real-time Analytics applications. Later in the course, we go through the hands on
demos where we’ll process streaming data from Kinesis as well as from DynamoDB streams
using AWS Lambda.