Build a Serverless App with AWS Lambda - Hands On!

Video description

Immerse yourself in Amazon Web Services (AWS) with this hands-on, project-based course - and truly internalize some highly valuable skills in the world of technology. We'll walk you through building your own chat website using nothing but AWS services - and no standalone services or server instances at all! Building a "serverless app" using AWS and its Lambda service is a great introduction to the core services AWS offers. We'll tie it all together by learning and practicing Javascript, and we'll learn about CORS to grant browsers the permissions they need to run a serverless application. Even if you're familiar with AWS, you'll learn valuable techniques on how to build a fully functional, dynamic website without maintaining any servers at all - not even via EC2! Your highly experienced guides through this project are Frank Kane, formerly a senior manager at Amazon, and Brian Tajuddin, a principal engineer also formerly working at Amazon. You'll be learning AWS from people who were there when it was being created. You'll join over 140,000 other students of the Sundog Education team who have leveled up their careers with hot technical skills.

What You Will Learn

  • Build a chat application entirely with AWS services, and no stand-alone servers at all.
  • Architect and design serverless applications. Serve static resources to browsers using AWS s S3 (Simple Storage Service).
  • Use Javascript to dynamically modify web pages. Manage permissions and access policies using IAM (Identity and Access Management).
  • Manipulate and vend data in the cloud using AWS Lambda.
  • Use CORS to manage client-side security in serverless apps.
  • Store and retrieve data with DynamoDB.
  • Model API s and create SDK s with API Gateway.
  • Create a user login system with Cognito.
  • Speed up your web app with a CloudFront CDN.

Audience

Technologists curious about Amazon Web Services and how to build web applications entirely in the cloud. People seeking basic AWS skills as a start in working toward certifications. People who learn best by doing, with a concrete example.Engineers tasked with building a web app who want to minimize ongoing maintenance

About The Author

Frank Kane: Frank Kane has spent nine years at Amazon and IMDb, developing and managing the technology that automatically delivers product and movie recommendations to hundreds of millions of customers all the time. He holds 17 issued patents in the fields of distributed computing, data mining, and machine learning. In 2012, Frank left to start his own successful company, Sundog Software, which focuses on virtual reality environment technology and teaches others about big data analysis.

Brian Tajuddin: Brian Tajuddin is a professional software engineer specializing in high-scale enterprise systems. In his career, he's worked on enterprise content integration, customer-facing ecommerce, machine learning, service frameworks, and business tooling. He's spent 12 years working at Amazon and Salesforce, so he's both used and helped build some of the biggest cloud services in the world.Frank Kane spent 9 years at Amazon and IMDb, developing and managing the technology that automatically delivers product and movie recommendations to hundreds of millions of customers, all the time. Frank holds 17 issued patents in the fields of distributed computing, data mining, and machine learning. In 2012, Frank left to start his own successful company, Sundog Software, which focuses on virtual reality environment technology, and teaching others about big data analysis.

Table of contents

  1. Chapter 1 : Introduction
    1. Introduction
    2. Setup the website
  2. Chapter 2 : Static Chat Application with S3
    1. S3 Overview
    2. Walkthrough of demo site
    3. Adding static data to the website
    4. JavaScript Syntax Basics
    5. JavaScript Parallelism
    6. Accessing static data from JavaScript
    7. Exercise 1 solutions
  3. Chapter 3 : Creating an API
    1. Lambda functions overview
    2. Introduction to IAM and policies
    3. Creating a policy for the Lambda function
    4. Code walkthrough of the first Lambda function
    5. Running the lambda function with test data
    6. Lambda triggers
    7. Adding an API Gateway trigger to the function
    8. Understand and Setup CORS
    9. Calling the API from the website
    10. ORS Activity Solution
    11. Retrieving a conversation with the API
    12. Failure test activity solution
  4. Chapter 4 : Use DynamoDB for storage
    1. DynamoDB overview
    2. ynamoDB vs. S3
    3. Create DynamoDB tables
    4. Create some sample data in DynamoDB
    5. Update Lambda policy to access DynamoDB tables
    6. Read a conversation from Dynamo DB
    7. Read conversation list from DynamoDB
    8. Write new messages to DynamoDB
    9. Exercise Solution
  5. Chapter 5 : Break up the monolith
    1. Overview of why having only one Lambda function can create problems
    2. API Gateway overview - Resources and Methods
    3. API Gateway overview – Models
    4. API Gateway overview - Request Flow
    5. Create API structure in API Gateway
    6. Lambda functions for reading and writing messages
    7. API Gateway stages
    8. Exporting a JavaScript client and Swagger
    9. Remove hard-coded user names from Lambda
  6. Chapter 6 : Add Identity to the app
    1. Cognito overview
    2. Create a user pool
    3. List Users in the API
    4. List Users on the site
    5. Create a new conversation
    6. Create sign up page
    7. Create verification page
    8. Add login and logout
    9. Add a Cognito authorizer to the API Gateway
    10. Add a Cognito authorizer to the API Gateway
    11. Add a Cognito authorizer to the API Gateway
  7. Chapter 7 : Optimization and Preparing for Production
    1. Lambda Versioning
    2. Using stage variables
    3. CloudFront overview
    4. Setting up a CloudFront CDN
    5. Monitoring
    6. Custom domains
  8. Chapter 8 : You Made It! Where to go from here
    1. More to Explore...

Product information

  • Title: Build a Serverless App with AWS Lambda - Hands On!
  • Author(s): Frank Kane, Brian Tajuddin
  • Release date: April 2018
  • Publisher(s): Packt Publishing
  • ISBN: 9781789348149