Everything Everywhere All at Once
summary
Compares four server models—Thread-per-request (Spring MVC), Reactor (Project Reactor), Kotlin coroutines, and Java Loom—using a concrete benchmark of 20,000 authors × 5 activities (100,000 activities) with Gatling in Docker limited to two CPU cores and low memory. Measures latency, especially 99th-percentile (~80 ms), finds Spring MVC breaks under higher load with errors, Reactor performs better, and Kotlin coroutines achieve the best tail latency; recommends running performance tests before refactors, migrating Kotlin services to coroutines, and Java projects to wait for Loom.
AI-written summary · about
chapters (9)
- 0:00Threads and context
- 3:12Thread scheduler basics
- 8:10Fred per request vs event loop
- 13:30Async in servers
- 21:00Kotlin coroutines
- 27:41Virtual threads in Loom
- 32:40Spring vs Reactor vs Coroutines
- 39:48Summary and recommendations
- 43:41Q&A
related talks
40mEverything Everywhere All at Once
41mServices Reloaded Increased Throughput with Project Loom Virtual Threads
38mJava Project Loom: Why Should I Care?
38mReactive ❤️ Loom: A Forbidden Love Story
56mReactive programming lessons learned
40mPreparing Spring Web Applications for Loom
35mUntangled: Sneak peek at Project Loom
47mThe Road Not Taken: A Developer's Guide to Life Beyond Spring Boot
