Running Scala on AWS Lambda as a native-image
summary
Case study of a year building AWS Lambdas with Scala 3, packaged via scala-cli, compiled to GraalVM native-image, and released as an open‑source custom lambda runtime. Shows a deployable GitHub template + Actions that builds a tiny zip/container, runs multiple handlers in one function, supports local testing, and emits structured JSON logs to CloudWatch. Reports cold starts are rare (~1% of invocations), warm calls run in single‑digit to low‑tens of milliseconds and logging can add tens of ms.
AI-written summary · about
chapters (17)
- 0:00Introduction
- 2:58Key takeaways
- 4:43Why Scala for AWS Lambda
- 6:50Motivations for Lambda
- 9:21Technologies and tools
- 11:56How Lambda works
- 17:09Lambda pricing and performance
- 22:59JVM challenges on Lambda
- 24:49Solutions for cold starts
- 26:41Custom Scala Lambda runtime
- 29:50Local testing workflow
- 31:00Testing strategies
- 33:12Deployment on AWS
- 34:35Multiple handlers in Lambda
- 35:41Logging and debugging
- 37:10Performance metrics analysis
- 38:59Summary and GitHub demo
related talks
24mHigh Performance Serverless Functions in Scala
53mScale up with GraalVM and AWS Lambdas
06mInterview
46mThawing Java on AWS Lambda Reducing Cold Start Times from 11 Seconds to 1
01h 03mServerless 2049
47mReal Use Cases for Using AWS Lambda for Infrastructure Tasks
39mHow to Go with AWS Lambda?
34mThawing Java on AWS Lambda
