Title Page Copyright and Credits Learn AWS Serverless Computing About Packt Why subscribe? Contributors About the author About the reviewers 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 color images Conventions used Get in touch Reviews Section 1: Why We're Here The Evolution of Compute Understanding enterprise data centers The physical data center Colocating our gear Cloud born Exploring the units of compute Physical servers – scale at the physical server layer Virtual machines – density efficiencies achieved by virtualizing the hardware Containers – better density with faster start times Functions – best density by abstracting the runtime Understanding software architectures Monolith – single code base N-tier – achieve individual scale Microservices – do one thing and do it well Nanoservices with serverless Predicting what comes next Summary Questions Further reading Event-Driven Applications Understanding modern applications Event-command Event-driven or event-first Evolution of integration patterns Enterprise Application Integration ESB Serverless integration Automation with serverless Scripts on a server Configuration management Automation as a Service Summary Questions Further reading Section 2: Getting Started with AWS Lambda Functions The Foundations of a Function in AWS Technical requirements Learning about AWS Lambda Fundamentals of a function Invoking a function Pricing model Ephemeral state High availability Service limits Use cases Setting up security Execution policies Function policies Invoking Lambda functions Invocation types Event sources Execution environment Environment variables Anatomy of a Lambda function Handler function Event, content, and context objects The programming model Runtimes Writing, building, and packaging Deployment Testing, monitoring, and debugging Writing your first Lambda function Hello, world! in the console Hello, world! using the command line Summary Questions Further reading Adding Amazon API Gateway Technical requirements Introducing Amazon API Gateway Serverless APIs Deployment options WebSockets Use cases Securing an API IAM permissions and policies Authentication with Cognito Lambda authorizers Certificates Building, deploying, and managing APIs Building APIs Deploying APIs Throttling and quota management Monitoring and logging Building a Lambda-backed API Hello world using the console Hello world via the CLI Summary Questions Further reading Leveraging AWS Services Technical requirements Using Amazon S3 with Lambda Revision S3 as an event source Interacting using the SDK Using Amazon DynamoDB with Lambda The basics Triggering a Lambda function Interacting using the SDK Using AWS Step Functions as an Orchestrator State machines with Lambda Integrating with other services Step Functions Local Summary Questions Further reading Going Deeper with Lambda Technical requirements Bringing your own runtime to Lambda Runtime API and bootstrapping Putting it all together Enabling code reuse through layers Understanding Lambda layers Using a Lambda layer Sharing a Lambda layer across multiple AWS accounts Use cases for Lambda layers Operationalizing Using environment variables Secrets management Concurrency and error handling Observability Development practices Structuring a function Handler function Controller Service Reuse and optimization Using the ecosystem Summary Questions Further reading Section 3: Development Patterns Serverless Framework Technical requirements Understanding the need for a framework Developer focus Managing a serverless project Exploring the core concepts of the Serverless Framework Services Functions Events Resources and plugins Layers Deploying your first service Installation and the CLI Hello World API in 5 minutes Understanding the deployment The dashboard Serverless offline (run it locally) Testing and debugging Unit testing lambda functions Integration testing Logging and monitoring Summary Questions Further reading CI/CD with the Serverless Framework Technical requirements Using serverless development pipelines Patterns Continuous integration Continuous delivery Continuous deployment Using serverless stages Understanding deployment patterns Deploying all at once Blue/green environment switching Canary or traffic shifting Introducing AWS services AWS CodePipeline AWS CodeBuild AWS CodeCommit Building a pipeline Creating the pipeline in production A pipeline that deploys itself Summary Questions Further reading Section 4: Architectures and Use Cases Data Processing Technical requirements Getting across the processing types Batch Micro-batch Streaming Building a batch data processing workload Where do I start? The ETL blueprint Data storage using S3 Data cataloging – Glue Custom classifiers Databases Crawlers Data transformation – Glue Creating a Glue job Running a Glue job Data analytics and transformation Querying data in S3 with Athena Summary Questions Further reading AWS Automation Technical requirements Embedded security Enforcement via tagging Automatic detection and remediation with AWS Config Implementing continuous compliance Running scheduled tasks Replacing server-based local schedulers Auditing and reporting Summary Questions Further reading Creating Chatbots Technical requirements Building a chatbot with Amazon Lex Understanding the language model Intents Utterances Slots Prompts Fulfillment Building and testing your bot Building a Slackbot using Serverless Framework Understanding the architecture Deploying a Slackbot Registering a new Slack app Crafting the bot's brain Connecting our bot to Slack Summary Questions Further reading Hosting Single-Page Web Applications Technical requirements Understanding serverless SPAs on AWS The architecture The components Amazon S3 Amazon CloudFront Backend services Building SPAs with Serverless Framework Summary Questions Further reading GraphQL APIs Technical requirements Introduction to GraphQL Core concepts Building GraphQL APIs Lambda-backed endpoint Using an AWS-managed service Summary Questions Further reading Assessment Chapter 1: The Evolution of Compute Chapter 2: Event-Driven Applications Chapter 3: The Foundations of a Function in AWS Chapter 4: Adding Amazon API Gateway Chapter 5: Leveraging AWS Services Chapter 6: Going Deeper with Lambda Chapter 7: Serverless Framework Chapter 8: CI/CD with the Serverless Framework Chapter 9: Data Processing Chapter 10: AWS Automation Chapter 11: Creating Chatbots Chapter 12: Hosting Single-Page Web Applications Chapter 13: GraphQL APIs Other Books You May Enjoy Leave a review - let other readers know what you think