- The document provides an overview of a serverless computing workshop that will guide participants in building a serverless web application called Wild Rydes.
- The workshop consists of several labs that will teach users how to set up a static website on S3, manage user accounts with Cognito, create a backend service with Lambda and DynamoDB, build a REST API with API Gateway, and optionally process images with Step Functions.
- The goal is for users to learn the basics of building serverless web applications using AWS services like Lambda, API Gateway, S3, Cognito, DynamoDB, and Step Functions.
2. What to Expect from the Session
• Overview of serverless computing
• Introduction to AWS services used in the workshop
• Outline of the workshop scenario
• Preview of the labs
6. Amazon Elastic Compute Cloud (EC2)
• Allows developers to
obtain compute capacity
on-demand
• Create virtual servers in
the cloud with the click of
a button
• Launched in 2006
7. Amazon Elastic Compute Cloud (EC2)
Match Capacity and
Demand
Global Footprint Elasticity
Provision Servers in
Minutes
Infrastructure as
Code
Programmatic
Networking
9. Serverless Computing
Build and run applications and
services without thinking of
servers
• Fully Managed
• Developer Productivity
• Continuous Scaling
10. Serverless Computing
Fully Managed
• No provisioning
• No system administration
• No security patches
• Fault tolerant
Developer Productivity
• Focus on your application
• Experiment and innovate
quickly
Continuous Scaling
• Scale up and down with
demand
• Never pay for idle
resources
12. AWS Lambda: Serverless computing
Run code without servers. Pay only for the compute time you consume.
Triggered by events or called from APIs:
• PUT to an Amazon S3 bucket
• Updates to Amazon DynamoDB table
• Call to an Amazon API Gateway endpoint
• Mobile app backend call
• And many more…
Makes it easy to:
• Perform real-time data processing
• Build scalable backend services
• Glue and choreograph systems
13. Benefits of AWS Lambda
No Servers to Manage Continuous Scaling Don’t Pay for Idle Resources
Lambda allows you to run
application logic without
provisioning servers or worrying
about the health or security of
underlying resources
Lambda scales infrastructure
beneath your application logic;
just send requests and events
and Lambda will automatically
scale to accommodate it
With Lambda, you’re billed in
100ms increments of execution
time and number of requests,
and you’re never charged for
anything when your code isn’t
running
14. Amazon DynamoDB
Fast and flexible NoSQL database service
for any scale
Dead Simple
• GetItem(primaryKey)
• PutItem(item)
Robust Depth
• Fine-Grained Access Control
• Streams
• Triggers
• Cross-Region Replication
• DynamoDB local
• Free-text search
• Titan Graph Database integration
• Strong consistency option
• Atomic counters
15. Amazon API Gateway
Create, publish, maintain, monitor, and secure APIs at any scale
Create a unified API
frontend for multiple
backend microservices
DDoS and throttling to
protect your backend
microservices
Authenticate and authorize
requests to your backend
microservices
16. Amazon Cognito
Add user sign-up, sign-in, and data synchronization to your apps
Add user sign-up and sign-
in to your mobile and web
apps
Federate identities and
provide secure access to
AWS resources
Store and sync across
devices
17. Amazon Simple Storage Service (S3)
Durable, massively scalable object storage
• Designed for 99.999999999% durability and
99.99% availability
• Stores trillions of objects and regularly handles
millions of requests per second
• Effectively infinite storage without provisioning
capacity
18. Amazon Simple Storage Service (S3)
S3 is a low-cost, highly available solution for static
website hosting – and it’s completely serverless
• Reliably serve your static website and handle
unexpected peaks without worrying about scaling
your infrastructure
• Integrates with Amazon CloudFront for edge delivery
of content across the globe
21. Help Wild Rydes Disrupt Transportation!
So how does this magic work?
22. Wild Rydes is Backed by Leading Investors
THE BARN
ACCELERATOR
TENDERLOIN
CAPITAL
PENGLAI COMMUNICATIONS
AND POST NEW CENTURY
TECHNOLOGY CORP LIMITED
23. Your Task: Build the Wild Rydes website
Welcome to Wild Rydes Inc.,
Employee #3!
24. Scenario: Wild Rydes
The Wild Rydes Serverless Web Application Workshop introduces the
basics of building web applications using serverless infrastructure.
25. Lab 1: Static Website Hosting
OBJECTIVE: Create a bucket in Amazon S3 and configure it for static website
hosting. The static HTML, JS, and CSS will be served directly to user
browsers from Amazon S3.
26. Lab 2: User Management
OBJECTIVE: Allow visitors to register as a new user on Wild Rydes, by providing
and validating their email address. Amazon Cognito will be used to manage the
User Pool for Wild Rydes.
27. Lab 3: Serverless Service Backend
OBJECTIVE: Create a service backend using AWS Lambda and Amazon
DynamoDB to handle requests from your frontend static website content.
28. Lab 4: Create RESTful API
OBJECTIVE: Use API Gateway to expose the Lambda function you built in the
previous module as a RESTful API
29. Bonus Module! Image Processing
OBJECTIVE: Use AWS Step Functions to orchestrate an image processing
workflow