104. Explaining Lambda Runtimes
Description
In this episode, we celebrate AWS Lambda's 9th birthday by taking a deep dive into Lambda runtimes. We discuss how Lambda works, compare official runtimes vs. custom runtimes, and explain when and why building a custom runtime might be worth the effort. We talk through how custom runtimes work, options for deploying them, and potential use cases where they could be beneficial over standard runtimes.
💰 SPONSORS 💰
AWS Bites is brought to you by fourTheorem, an Advanced AWS Partner. If you are moving to AWS or need a partner to help you go faster, check us out at fourtheorem.com!
In this episode, we mentioned the following resources:
The original announcement launching AWS Lambda in 2014: https://aws.amazon.com/about-aws/whats-new/2014/11/13/introducing-aws-lambda/
List of official Lambda runtimes: https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html
Library implementing the Rust runtime: https://github.com/awslabs/aws-lambda-rust-runtime
Library implementing the Go runtime: https://github.com/aws/aws-lambda-go/
Library implementing the C++ runtime: https://github.com/awslabs/aws-lambda-cpp
Third-party PHP runtime (Bref): https://bref.sh/
Third-party Swift runtime: https://github.com/swift-server/swift-aws-lambda-runtime
Official documentation on how to build a custom runtime: https://docs.aws.amazon.com/lambda/latest/dg/runtimes-custom.html
An official tutorial on how to build a custom runtime: https://docs.aws.amazon.com/lambda/latest/dg/runtimes-walkthrough.html
List of all the environment variables available to a runtime: https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-runtime
Lambda Response Streaming official docs: https://docs.aws.amazon.com/lambda/latest/dg/runtimes-custom.html#runtimes-custom-response-streaming
Our previous episode on Lambda Response Streaming: https://awsbites.com/77-how-do-you-use-lambda-response-streaming/
On-demand Container Loading in AWS Lambda (paper): https://arxiv.org/abs/2305.13162
Deep dive on container support for AWS Lambda (Eoin's article): https://dev.to/eoinsha/container-image-support-in-aws-lambda-deep-dive-2keh
When is the Lambda Init Phase Free, and when is it Billed? (article by Luc van Donkersgoed): https://lucvandonkersgoed.com/2022/04/09/when-is-the-lambda-init-phase-free-and-when-is-it-billed/
You can listen to AWS Bites wherever you get your podcasts:
Apple Podcasts: https://podcasts.apple.com/us/podcast/aws-bites/id1585489017
Spotify: https://open.spotify.com/show/3Lh7PzqBFV6yt5WsTAmO5q
Google: https://podcasts.google.com/feed/aHR0cHM6Ly9hbmNob3IuZm0vcy82YTMzMTJhMC9wb2RjYXN0L3Jzcw==
Breaker: https://www.breaker.audio/aws-bites
RSS: https://anchor.fm/s/6a3312a0/podcast/rss
In this episode, we discuss the pros and cons of using serverless architecture in enterprise companies. We cover topics like cost, complexity, security, ability to evolve architecture, and more. Overall, we find that serverless can provide benefits like reduced operational costs, improved...
Published 11/15/24
In this episode, we discuss why IAM users and long-lived credentials are dangerous and should be avoided. We share war stories of compromised credentials and overprivileged access. We then explore solutions like centralizing IAM users, using tools like AWS Vault for temporary credentials,...
Published 11/01/24