Fearless JVM Lambdas
summary
Argues the JVM is a practical AWS Lambda runtime, shows container behavior (cold starts, containers live 5 minutes to 4+ hours), and gives concrete tactics: build an uberjar, AOT-compile handler namespaces, and trim dependencies (avoid pulling the whole AWS SDK; copy needed event POJOs). Recommends use 256MB+ for Clojure to avoid decoding errors, measures show Clojure on JVM is much faster for CPU-bound, long-running work (roughly 4x in one benchmark) but has slower cold-starts than ClojureScript/Node.
AI-written summary · about
chapters (19)
- 0:00Intro
- 1:40Burning Questions
- 4:17Serverless Traits and Benefits
- 5:59Backend as a Service
- 7:01Functions as a Service
- 7:47Challenges of Serverless
- 12:27Marvelous Serverless use cases
- 13:50Hybrid Architectures are A-OK
- 16:03The History of AWS Lambda
- 17:00AWS Serverless Ecosystem
- 17:48AWS Lambda Runtime Environment
- 18:46Behind the curtains...
- 20:38Container cold starts
- 21:26What causes cold starts?
- 29:25AWS Lambda's JVM runtime
- 30:10JVM Cold Starts
- 31:23The Lambda Diet
- 34:34Handling input
- 36:51Tips & Tricks
related talks
49mSpeeding Up AWS Lambda: JVM and Cold Start in Practice
56mJava on AWS - all the details that matter
56mAfraid of Java cold starts in Serverless? Fear not, Java is fast
19mTen things that improve the performance of your Java based AWS Lambda
46mThawing Java on AWS Lambda Reducing Cold Start Times from 11 Seconds to 1
48mJava in the Clouds: Pointless and Expensive or Productive and Must-Have?
36mServerless Java
01h 00mAdapting Java for the Serverless world
