120. Lambda Best Practices
Listen now
Description
In this episode, we discuss best practices for working with AWS Lambda. We cover how Lambda functions work under the hood, including cold starts and warm starts. We then explore different invocation types - synchronous, asynchronous, and event-based. For each, we share tips on performance, cost optimization, and monitoring. Other topics include function structure, logging, instrumentation, and security. Throughout the episode, we aim to provide a solid mental model for serverless development and share our experiences to help you build efficient and robust Lambda applications. 💰 SPONSORS 💰 AWS Bites is brought to you by fourTheorem, an AWS Partner that specialises in modern application architecture and migration. We are big fans of serverless and we have worked on quite a few serverless projects even at a massive scale! If you are curious to find out more and to work with us, check us out at ⁠⁠fourtheorem.com⁠⁠! In this episode, we mentioned the following resources: Ep. 110 "110. Why should you use Lambda for Machine Learning?": https://awsbites.com/110-why-should-you-use-lambda-for-machine-learning/ Ep. 108 "How to Solve Lambda Python Cold Starts": https://awsbites.com/108-how-to-solve-lambda-python-cold-starts/ Ep. 104 "Explaining Lambda Runtimes": https://awsbites.com/104-explaining-lambda-runtimes/ Ep. 92 "Decomposing the Monolith Lambda": https://awsbites.com/92-decomposing-the-monolith-lambda/ Ep 64 "How do you write Lambda Functions in Rust?": https://awsbites.com/64-how-do-you-write-lambda-functions-in-rust/ Ep 65 "Solving SQS and Lambda concurrency problems": https://awsbites.com/65-solving-sqs-and-lambda-concurrency-problems/ Ep 10 "Lambda or Fargate for containers?": https://awsbites.com/10-lambda-or-fargate-for-containers/ Ep 4. "What language should you use for Lambda?": https://awsbites.com/4-what-language-should-you-use-for-lambda/ Ep 6. "Is AWS Lambda cheap or expensive?": https://awsbites.com/6-is-aws-lambda-cheap-or-expensive/ Article: "What do you need to know about SNS?": https://fourtheorem.com/what-do-you-need-to-know-about-sns/ Article: "What can you do with EventBridge": https://fourtheorem.com/what-can-you-do-with-eventbridge/ Article: "What do you need to know about SQS?": https://fourtheorem.com/what-do-you-need-to-know-about-sqs/ Yan Cui's video about using Lambda Destinations instead of DLQs: https://www.youtube.com/watch?v=hOetf6YN3zo Profiling functions with AWS Lambda Power Tuning: https://docs.aws.amazon.com/lambda/latest/operatorguide/profile-functions.html Blog post by Luca Mezzalira about hexagonal architectures for Lambda: https://aws.amazon.com/blogs/compute/developing-evolutionary-architecture-with-aws-lambda/ Ep 41 "How can Middy make writing Lambda functions easier?": https://awsbites.com/41-how-can-middy-make-writing-lambda-functions-easier/ SLIC Watch for automated dashboards and alarms: https://github.com/fourTheorem/slic-watch Ep 35 "How can you become a Logs Ninja with CloudWatch?": https://awsbites.com/35-how-can-you-become-a-logs-ninja-with-cloudwatch/ Ep 34 "How to get the most out of CloudWatch Alarms?": https://awsbites.com/34-how-to-get-the-most-out-of-cloudwatch-alarms/ Ep 33 "What can you do with CloudWatch metrics?": https://awsbites.com/33-what-can-you-do-with-cloudwatch-metrics/ Do you have any AWS questions you would like us to address? Leave a comment here or connect with us on X, formerly Twitter: - ⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠https://twitter.com/eoins⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠ - ⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠https://twitter.com/loige⁠⁠
More Episodes
In this episode, we provide an overview of Amazon Aurora, a relational database solution on AWS. We discuss its unique capabilities like distinct storage architecture for better performance and faster recovery. We cover concepts like Aurora clusters, reader and writer instances, endpoints, and...
Published 05/02/24
In this episode, we discuss 5 different ways to extend CloudFormation capabilities beyond what it natively supports. We started with a quick recap of what CloudFormation is and why we might need to extend it. We then covered using custom scripts and templating engines, which can be effective but...
Published 04/18/24
Published 04/18/24