What we learn running Java, Spring Boot and Quarkus on AWS: the numbers we measured, and what they cost us.
Porting Spring Boot to Quarkus is now the quick part. Five questions a passing test suite can't answer, and the cold-start numbers for deciding whether to move.
We sent 200 simultaneous cold requests to an AI-generated Quarkus migration on AWS Lambda. The generated version handled 2. After two changes, 68. Then the database ceiling showed up.
Five ways to run one Spring Boot app on AWS Lambda, measured. Tuning took SnapStart from 3.5 s to 1.2 s, and one Hibernate default cost Spring 30 ms a request.
The usual advice says Java starts too slowly for Lambda. We run 17 Java functions anyway: measured cold starts, a 51,000-request load test, and what it cost us.