Title Page Copyright and Credits Building Serverless Microservices in Python About Packt Why subscribe? Packt.com Contributors About the author Packt is searching for authors like you Preface Who this book is for What this book covers To get the most out of this book Download the example code files Download the color images Conventions used Get in touch Reviews Serverless Microservices Architectures and Patterns Understanding different architecture types and patterns The monolithic multi-tier architecture and the monolithic service-oriented architecture Benefits of monolithic architectures Drawbacks of the monolithic architectures Overview of microservices Benefits and drawbacks of microservice architectures SOA versus microservices Virtual machines, containers, and serverless computing Virtual machines Containers Serverless computing Comparing virtual machines, containers, and serverless Overview of microservice integration patterns Design patterns Why are patterns useful? Software design patterns and principles Serverless microservices pattern categories Communication styles and decomposition microservice patterns Communication styles One-to-one communication microservice patterns Many-to-many communication microservice patterns Decomposition pattern by business capability Decomposition pattern by bounded context Serverless computing in AWS Overview of some of the key serverless services in AWS AWS Lambda Serverless computing to implement microservice patterns Example use case – serverless file transformer Setting up your serverless environment Setting up your AWS account Setting up MFA Setting up a new user with keys Managing your infrastructure with code Installing bash on Windows 10 Updating Ubuntu, installing Git and Python 3 Installing and setting up the AWS CLI Summary Creating Your First Serverless Data API Overview of security in AWS Why is security important? Security by design principles AWS Identity and Access Management JavaScript object notation IAM policies IAM users IAM groups IAM roles Securing your serverless microservices Lambda security API Gateway security DynamoDB security Monitoring and alerting Find out more Building a serverless microservice data API Serverless microservice data API requirements Query string Data API architecture Setting up Lambda security in the AWS Management Console Creating an IAM policy DynamoDB IAM policy Lambda IAM policy Creating the Lambda IAM role Creating and writing to a NoSQL database called DynamoDB using AWS Creating a DynamoDB in AWS Writing data to DynamoDB using AWS Querying DynamoDB using AWS DynamoDB Scan in AWS Management Console DynamoDB Query in AWS Management Console Deleting DynamoDB using AWS Creating and writing to a NoSQL database called DynamoDB using Python Creating a DynamoDB table using Python Writing to DynamoDB using Python Querying DynamoDB using Python Creating a Lambda to query DynamoDB Creating the Lambda function Testing the Lambda function Setting up the API Gateway and integrating it with a Lambda proxy Connecting API Gateway, Lambda, and DynamoDB Cleaning-up Summary Deploying Your Serverless Stack An overview of serverless stack build and deploy options Manually provisioning infrastructure Infrastructure as code Building and deploying using the Serverless Application Model (SAM) Building and deploying using alternate options Creating a profile, an S3 bucket, IAM policies, and IAM roles resources Creating an AWS credentials profile Creating an S3 bucket Setting up the configuration files for your AWS account Updating the polices and assuming roles files Creating the IAM roles and policies Checking the IAM roles and policies Building and deploying with API Gateway, Lambda, and DynamoDB Building the Lambda as a ZIP package SAM YAML template Packaging and deploying your serverless stack Putting it all together Manually testing the serverless microservice Making code and configuration changes Deleting the serverless stack Summary Testing Your Serverless Microservice Unit testing your Python Lambda code Why is testing important? Types of testing Unit testing Lambda Python code The sample test data The unit test Mocking Running the unit test Code coverage Running and debugging your AWS Lambda code locally Batch-loading data into DynamoDB Running the Lambda locally Integration testing using real test data Testing that a Lambda has been deployed correctly Testing that API Gateway has been deployed correctly The AWS Serverless Application Model CLI Loading and end-to-end testing at scale Load testing your serverless microservice Strategies to reduce the API's latency Cleaning up Summary Securing Your Microservice Overview of the security in AWS Why is security important? Types of security terms in AWS Overview of AWS Identity and Access Management (IAM) IAM users IAM groups IAM roles Securing your serverless microservice Lambda security DynamoDB security Monitoring and alerting Summary Other Books You May Enjoy Leave a review - let other readers know what you think