1. Home
  2. Training Library
  3. Amazon Web Services
  4. Courses
  5. Advanced Use of Amazon API Gateway

Scenario Overview

The course is part of these learning paths

Solutions Architect – Professional Certification Preparation for AWS
course-steps 47 certification 6 lab-steps 19 quiz-steps 4 description 2
Certified Developer – Associate Certification Preparation for AWS
course-steps 29 certification 5 lab-steps 22 description 2
Serverless Computing on AWS for Developers
course-steps 12 certification 1 lab-steps 8
play-arrow
Scenario Overview
Overview
Transcript
DifficultyAdvanced
Duration22m
Students1109
Ratings
4.8/5
star star star star star-half

Description

In this course, we will create a multi-tier Serverless architecture on AWS using Amazon API Gateway, AWS Lambda, AWS Step Functions and Amazon Polly text to speech. 
This is a hands-on course where you will learn how to create serverless functions, data access, business logic and integration layers on AWS. Also, you will learn to create a presentation layer for your application using the client SDK generated by Amazon API Gateway.

We will then host the application on Amazon S3. At the conclusion of the course, you will be able to recognize and implement an end to end workflow built in the Amazon Cloud using Serverless components.

This course is intended for developers or DevOps engineers who want to create Serverless applications on AWS, or who may be considering migrating their existing web applications to AWS.

Pre-requisites for this course are having a basic familiarity with Amazon API Gateway, Lambda, DynamoDb, S3 and AWS Step functions is required and some knowledge of building web applications using HTML and JavaScript will also be helpful.

Course resources - https://github.com/cloudacademy/advanced-api-gateway-resources

About the Author

Tehreem is a Sr. Software Engineer with passion in Cloud Technologies, Big Data analytics, Software Testing and Automation. She has over 10 years of work experience comprising of her tenure at ServiceNow, Microsoft and Harmonic Inc. Most recently she has been developing learning content in-line with the emergence of Public Clouds and XaaS platforms with focus on AWS, Microsoft Azure and GCP. Tehreem resides in BayArea, CA with her family and when not working she enjoys nature/outdoors, movies and fine dining.

- [Instructor] In this hands on course we'll build a pizza ordering web application where the users will be able to select menu items, choose a delivery or pickup option and enter payment details and then order the pizza. The back end and front end of this app will be built using various services provided by AWS. As you can see in this diagram, our architecture is divided into several layers. The data layer consists of Amazon DynamoDB, which is a fast and flexible NoSQL database. It's best suited for applications that require flexible data model and reliable performance, like our web application here. Then the data access layer is hosted in lambda functions. All necessary transactions to the DynamoDB are made through lambda functions. We'll also utilize Amazon Polly in this application, which is a newer service by Amazon. It let's you convert text to lifelike speech. In our case we'll use it to convert order status to speech, which will be played back by our application for the users to hear. Each of our lambda functions here corresponds to a microservice that performs a certain task. And we'll orchestrate these using Amazon Step Functions. Hence our business logic layer is embodied in Step Functions where we make decisions based on results from lambda functions. Step Functions will allow us to create a visual workflow or state machine for our execution. Then, our integration layer consists of API Gateway, which will be used to create a rest interface of the underlying daytracks islay for the client task. Here, we'll directly integrate API Gateway with Step Functions. For the front end we'll create an HTML page using JavaScript and host our page on Amazon S3 as a static website. Okay, if you're ready, let's get started!