Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Serverless App Development using API Gateway in AWS: 2-in-1
Rating: 4.4 out of 5(35 ratings)
319 students

Serverless App Development using API Gateway in AWS: 2-in-1

Practical solutions to building Serverless applications using the API Gateway service.
Last updated 8/2018
English

What you'll learn

  • Create a highly available Serverless microservice data API
  • Build, deploy and run your Serverless configuration and code
  • Design and develop Serverless applications by integrating AWS Lambda and API Gateway using the Serverless Application Framework
  • Understand how to build all the components of the Serverless framework
  • Using your existing API with the API gateway: Know how to secure the API gateway, control access to the API gateway, integrate AWS Lambda and the API gateway, work with IAM policies with the API gateway
  • Easily deploy and manage the API gateway service.

Course content

2 sections46 lectures4h 41m total length
  • The Course Overview9:34
    This video gives an overview of the entire course.
  • Monolithic and Microservice Architectures15:08

    There are many architectures that exist before Microservices. In this video, we will see what are they, what are the benefits and drawbacks, how do they compare to microservices.

    •         See the overview of monolithic multi-tier architecture and Service Orientated Architecture (SOA)
    •         See the overview of micsoservices architecture
    •         See the benefits and drawbacks of monolithic and micsoservices architecture
  • Virtual Machines, Containers, and Serverless Computing13:08

    In this video, we will show where does serverless computing fit in with other public cloud offerings.

    •         See the overview of virtual machines benefits and drawbacks
    •         See the overview of container benefits and drawbacks
    •         See the overview of serverless computing benefits and drawbacks
  • Serverless Computing in AWS10:38

    In this video, we will see what the serverless computing offerings available in AWS are and how these service s fit together.

    •         See the overview of the serverless managed services
    •         See the example: how these can fit together to solve a data transformation task
  • Setting Up Your Serverless Environment in AWS11:21

    In this video, we will set up a new user. Also, we will see how can I ensure that the user access is secure and how I setup my local serverless environment.

    •         Use the AWS Management Console to setup a new user
    •         Set up multi-factor authentication for a user
    •         Set up your local environment credentials, AWS Python SDK and CLI
  • Overview of Security in AWS5:52

    In this video, we will see that with data breaches and compliance requirements security is a key consideration.

    •         See the security Examples and impacts on an organization
    •         Explain the security at rest, in transit, authentication, and authorization
    •         Learn that AWS has a shared security responsibility model that should be followed
  • Overview of AWS Identity and Access Management (IAM)3:24

    In this video, we will see how can we configure AWS security to help secure user authorization and access to resources.

    •         Explain AWS Identity and Access Management (IAM)
    •         Learn IAM policies, users, groups to help secure your users
    •         Explain IAM roles to help secure your trusted entity
  • Securing Your Serverless Microservice5:45

    In this video, we will see how can we ensure that your microservice is secure and what are some of the best practices.

    •         Explain Lambda security
    •         Learn API gateway and DynamoDB security
    •         Explain how to monitor and alert
  • Building a Serverless Microservice Data API6:56

    In this video, we will see what is the architecture of serverless data provider API.

    •         Make use of API gateway, Lambda, and DynamoDB
    •         Overview of JSON and time series data
    •         Explain about request/response data flows
  • Setting Up a Lambda in the AWS Management Console10:52

    In this video, we will see how can I create my first Lambda function that parses the given URL parameters.

    •         Setup the IAM policies and role
    •         Write the Lambda code that parses the given URL parameters
    •         Test the Lambda function works
  • Setting Up the API Gateway and Integrating It with a Lambda Proxy6:05

    In this video, we will configure the API gateway to call a Lambda function.

    •         Create the API gateway resources and method
    •         Integrate the GET method with Lambda
    •         Test the API invoked the Lambda function correctly
  • Creating and Writing to a NoSQL Database Called DynamoDB7:44

    In this video, we will see how can I create, add data to, and query my DynamoDB table.

    •         Create a DynamoDB table using boto3
    •         Insert data into DynamoDB
    •         Query DynamoDB by partition and sort keys
  • Creating a Lambda to Query DynamoDB3:17

    In this video, we will see how can I query DynamoDB from within a Lambda function.

    •         Add the previous Lambda code that parses the given URL parameters
    •         Add the previous code that queries DynamoDB by Partition and sort keys
    •         Test the Lambda function with sample request data
  • Connecting API Gateway, Lambda, and DynamoDB4:25

    In this video, we will see how the API Gateway, Lambda and DynamoDB integrate together and is it all working.

    •         Understanding the integration
    •         Test the data with a request URL
    •         Understand the overall serverless microservices API
  • Unit Testing Your Python Lambda Code9:10

    In this video, we will see how we can make sure that the code is still running correctly and be more productive writing Lambda code.

    •         See that testing allows better collaboration, improves product quality, and leads to shorter release cycles
    •         Explain how unit tests help to verify that our functions work as expected
    •         Mock to replace parts of the system under test
  • Running and Debugging Your AWS Lambda Code Locally4:08

    In this video, we will see how can I simulate and debug a Lambda locally with real data without deploying it to AWS.

    •         Use sample event data
    •         Pass it into the Lambda function
    •         Debug the Lambda code step by step
  • Integration Testing Using Real Test Data1:30

    Once the Lambda function is deployed to AWS, this video explains how I can test it to make sure it’s running correctly.

    •         Use sample event data
    •         Submit the data via the AWS CLI
    •         Make sure we get the expected response
  • Performance and End-to-End Testing at Scale6:17

    In this video, we will see how I know if my API is performing as expected with a low latency and how can I improve the latency.

    •         Use Python Locust tool
    •         Load test for concurrent users
    •         See that the latency can be improved by changing DynamoDB and Lambda settings
  • Overview of Serverless Stack Build and Deploy Options7:26

    In this video, we will get to know that there are many challenges of provisioning infrastructure manually which include the cost, effort, lack of repeatable processes and limited scalability.

    •         Use Infrastructure as a Code
    •         Learn that serverless infrastructure and resources can be deployed using Serverless Application Model (SAM)
    •         Learn that serverless infrastructure and resources can be deployed using the AWS CLI other frameworks
  • Creating an S3 Bucket, IAM Policies, and IAM Roles Resources4:08

    In this video, we will get to know that resource and infrastructure need to be provisioned.

    •         Create an S3 bucket for the Lambda deployment package
    •         Deploy IAM policies for the Lambda function
    •         Deploy IAM roles for the Lambda function
  • Building and Deploying API Gateway, Lambda, and DynamoDB10:10

    In this video, we will see what are the steps needed to prepare and deploy the serverless stack.

    •         Create a Lambda deployment package
    •         Create API gateway, lambda, and dynamo using SAM
    •         Load data into DynamoDB
  • Building a Scalable Serverless Microservice Data API Conclusions6:15
    In this video, we’ll summarize what we have covered in this course.
  • Next Course3:00
    In this video, we’ll have a quick look at what is going to be covered in the next course.
  • Asset 1- Building a Scalable Serverless Microservice REST Data API:

Requirements

  • Prior basic knowledge of AWS and API Gateway is assumed
  • Basic knowledge of Serverless Computing in AWS will be useful

Description

There has been a growing interest in Serverless computing due to the increase in developer productivity, built in auto-scaling abilities, and reduced operational costs. In combining both microservices and Serverless computing, organizations will benefit from having the servers and capacity planning managed by the cloud provider, making them much easier to deploy and run at scale.

This comprehensive 2-in-1 course is a comprehensive and all-inclusive guide to using the API gateway and incorporating it in your Serverless ecosystem. Create a system where the infrastructure, scalability, and security are managed by AWS. Reduce your support, maintenance, and infrastructure costs. Also explore the power of the Serverless ecosystem with AWS services including DynamoDB, API Gateway, and much more!

Contents and Overview

This training program includes 2 complete courses, carefully chosen to give you the most comprehensive training possible.

The first course, Building a Scalable Serverless Microservice REST Data API, covers practical solutions to building Serverless applications. This course will teach you how to build an end-to-end Serverless application for your organization. We have selected a data API use case that could reduce costs and give you more flexibility in how you and your clients consume or present your application, metrics and insight data. You’ll make use of the latest Serverless deployment and build framework, share your experience on testing, and provide best practices for running a Serverless stack in a production environment.

The second course, Deep Dive into API Gateway and Building a Serverless Application, covers building applications using the API Gateway. In this course you’ll focus on the next component of AWS that offers Serverless computing—the API gateway service. You’ll learn how to develop the various parts of the API gateway. Then you’ll look into deploying the API gateway. You’ll also learn to secure the API gateway. You’ll integrate AWS Lambda and the API gateway.

By the end of the course, you’ll be able to build secure, cost-effective, and scalable Serverless data API, using the API Gateway service with AWS.

About the Authors

  • Richard T. Freeman, Ph.D. currently works for JustGiving, a tech-for-good company and the world’s most trusted social platform for online giving that’s helped 22 million users in 164 countries raise $4.5 billion for over 27,000 good causes. He is also offering short-term freelance cloud architecture & machine learning consultancy. He is a highly accomplished results-driven hands-on certified AWS Solutions Architect, Data Engineer and Data Scientist with proven success in delivering cloud-based big data analytics, unstructured data, high-volume, and scalable solutions. At Capgemini, he worked on large and complex projects for Fortune Global 500 companies and has experience in extremely diverse, challenging and multi-cultural business environments. Richard has a solid background in computer science and holds a Master of Engineering (MEng) in computer systems engineering and a Doctorate (Ph.D.) in machine learning, artificial intelligence and natural language processing. He has worked in charity, insurance, retail banking, recruitment, financial services, financial regulators, central government and e-commerce sectors, where he: - Provided design, architecture and technical consulting on client site for complex event processing, business intelligence, enterprise content management, and business process management solutions. - Delivered in-house production cloud-based big data solutions for large-scale graph, machine learning, natural language processing, cloud data warehousing, ETL data pipeline, recommendation engines, and real-time streaming analytics systems. - Worked closely with IBM and AWS and presented at industry events and summits - Published research articles in numerous journals, presented at conferences and acted as a peer-reviewer - Has over three years of production experience with Serverless computing on AWS
  • Alan Rodrigues is a software technology evangelist with over 10+ years in the software industry. Being abreast with the latest technologies is what he does best. One life is just not enough to intake all the information the world has to offer, but he does his bit and takes it one step at a time. These are just a few of the technologies he is well-versed in: - Cloud Services - Amazon Web Services. Certified in AWS as a SysOps Administrator. Well-versed in Azure Web Services as well. - Business Intelligence – SAP Business Objects, Informatica Powercenter. - Atlassian suite of products (JIRA, JIRA Agile, JIRA service desk, Confluence, Bitbucket, Hipchat) - Configuration, Continuous Integration - Subversion, Git, Jenkins, Atlassian Bamboo. - Operating Systems - Windows server 2003, 2008 & 2012, Windows 7, 10, Ubuntu, CentOS. - Databases - Oracle, MySQL, MongoDB, Microsoft SQL Server. - Change and Release Management – HPSM, HP uCMDB, Atlassian Service Desk.

Who this course is for:

  • Developers who need practical solutions to common problems while building their Serverless application.
  • A developer, Devops, or solution architect interested in architecting, building, and deploying Serverless apps with the API gateway service.