Video Details

ISBN 139781788622318

Course Length2 hours and 46 minutes

Video Description

In the past few years, there has been a shift away from monolithic architecture (with for example its large centralized deployments) to microservice architectures with small independent deployments, allowing much more flexibility and agile delivery. Traditionally virtual machines and containers were the main options for deploying microservices but they involve a lot of operational effort, configuration, and maintenance. More recently, 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.

In this course we show 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. We make use of the latest serverless deployment and build framework, share our experience on testing, and provide best practices for running a serverless stack in a production environment.

Style and Approach

This video tutorial adopts a recipe-based approach to teaching you the skills required to develop end-to-end serverless microservices for developers, DevOps, and architects. We have chosen a particular use case—creating a serverless data REST API—but the steps remain similar for other use cases. This use case was chosen, as traditionally it would have required an always-on fleet of machines or containers, which would have had to sit behind a load balancer and scale up and down depending on the number of requests. That approach is costly, and required complex configuration and on-going management. In this course, we will show you how you can overcome those limitations and quickly build a fully functional system using serverless microservices.

Table of Contents

Overview of Monolithic and Microservice Architectures

The Course Overview

Monolithic and Microservice Architectures

AWS Building Blocks for Creating Serverless Microservices

Virtual Machines, Containers, and Serverless Computing

Serverless Computing in AWS

Setting Up Your Serverless Environment in AWS

Securing Your Microservice

Overview of Security in AWS

Overview of AWS Identity and Access Management (IAM)

Securing Your Serverless Microservice

Creating Your First Serverless Microservice

Building a Serverless Microservice Data API

Setting Up a Lambda in the AWS Management Console

Setting Up the API Gateway and Integrating It with a Lambda Proxy

Creating and Writing to a NoSQL Database Called DynamoDB

Creating a Lambda to Query DynamoDB

Connecting API Gateway, Lambda, and DynamoDB

Testing Your Serverless Microservice

Unit Testing Your Python Lambda Code

Running and Debugging Your AWS Lambda Code Locally

Integration Testing Using Real Test Data

Performance and End-to-End Testing at Scale

Building and Deploying Your Serverless Stack

Overview of Serverless Stack Build and Deploy Options

Creating an S3 Bucket, IAM Policies, and IAM Roles Resources

Building and Deploying API Gateway, Lambda, and DynamoDB

Conclusion

Building a Scalable Serverless Microservice Data API Conclusions

Next Course

What You Will Learn

Understand how microservices compares with existing architectures

Understand how to create a serverless application in AWS

Learn how to secure access to data and resources

Run tests on your configuration and code

Create a highly available serverless microservice data API

Build, deploy and run your serverless configuration and code

Authors

Richard T. Freeman

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.

Alerts & Offers

Series & Level

We understand your time is important. Uniquely amongst the major publishers, we seek to develop and publish the broadest range of learning and information products on each technology. Every Packt product delivers a specific learning pathway, broadly defined by the Series type. This structured approach enables you to select the pathway which best suits your knowledge level, learning style and task objectives.

Learning

As a new user, these step-by-step tutorial guides will give you all the practical skills necessary to become competent and efficient.

Beginner's Guide

Friendly, informal tutorials that provide a practical introduction using examples, activities, and challenges.

Essentials

Fast paced, concentrated introductions showing the quickest way to put the tool to work in the real world.

Cookbook

A collection of practical self-contained recipes that all users of the technology will find useful for building more powerful and reliable systems.

Blueprints

Guides you through the most common types of project you'll encounter, giving you end-to-end guidance on how to build your specific solution quickly and reliably.

Mastering

Take your skills to the next level with advanced tutorials that will give you confidence to master the tool's most powerful features.

Starting

Accessible to readers adopting the topic, these titles get you into the tool or technology so that you can become an effective user.

Progressing

Building on core skills you already have, these titles share solutions and expertise so you become a highly productive power user.