Adapting Java for the Serverless world!
summary
Java on AWS faces high cold starts and memory costs but practical fixes exist: using smaller bundles and async AWS SDK cuts download and init time; choosing more memory/ARM and tuning with Power Tuning changes cost-performance (example: 1M requests at 512MB and 200ms yields ~$0.20 request + $1.67 duration); GraalVM native image gives sub‑1s cold starts but requires Linux custom runtimes, 6–10GB build RAM and longer CI; AWS SnapStart (CRaC) snapshots runtime during deploy to restore fast (deploy ~2.5m, x86 only, no EFS/provisioned concurrency); Micronaut/Quarkus/Spring (AOT support) reduce reflection and work with these approaches.
AI-written summary · about
chapters (59)
- 0:00Intro
- 0:46About Vadym
- 1:35About Iplabs
- 2:47Java popularity
- 3:12AWS
- 3:30Challenges
- 5:42Java Community
- 6:00Serverless Adoption
- 6:29Why Serverless
- 6:42What are these things
- 6:53Two call start times
- 7:03Lambda function
- 7:47Java Functions
- 8:57Price Model
- 9:19Duration
- 9:42Parameter
- 9:52Example
- 10:18Basics
- 11:40How it works
- 13:56Serverless Architecture
- 14:38Cold Start Times
- 15:56First Function
- 17:10Credentials
- 18:02HTTP Client
- 21:37Time
- 23:31TAST Compilation
- 24:53General Best Practices
- 26:12Memory Configuration
- 26:34Output
- 26:57Arm
- 27:25AWS Compute Optimizer
- 28:10AWS Cold Start
- 28:40substrate VM
- 28:50ahead of time compilation
- 29:16native image
- 30:04custom runtime
- 30:15deploy on AWS
- 30:40guten VM
- 31:13productivity
- 32:34principles
- 33:26steps to deploy
- 34:00Micronaut
- 34:14Spring
- 34:44No AWS
- 36:06Cold Stone
- 36:35GroundVM
- 37:14Conclusions
- 37:24Challenges and tradeoffs
- 38:46Snapstart
- 40:13JVM Snapshot
- 42:17JVM Snapshot Statistics
- 42:43AWS Snap Snapshot
- 43:24Snap Snapshot ReStore
- 46:07Framework Priming
- 47:03Open Source Project
- 47:43Engineering Problem
- 48:07Latency
- 48:48Snapstart Limitations
- 49:45Conclusion
related talks
01h 00mAdapting Java for the Serverless world
51mHow To Reduce Cold Starts for Java Serverless Applications in AWS
53mHigh performance Serverless Java on AWS
46mReduce Cold Starts for Java Serverless Applications in AWS
56mThinking in Serverless Java (Code)
53mAdapting Java for the Serverless world
19mTen things that improve the performance of your Java based AWS Lambda
56mJava on AWS - all the details that matter
