Java compilers: Why Java is one of the first options for Low latency apps
summary
Claim: Java is a first-choice platform for sub‑millisecond systems because tiered JIT compilers use runtime profiling to produce machine code that can beat ahead‑of‑time C/C++ after warmup. Uses UDP-based transports (sequencer/rewinder) and frameworks like LMAX Disruptor and Aeron (Project Iron); commercial options include TIBCO FTL and kdb+. Techniques: avoid GC (heap min=max, garbage‑free coding, Epsilon/ZGC/Shenandoah), cache‑friendly ring buffers, thread affinity. Evidence: production UDP links run weeks without loss; full GC once causes a production outage.
AI-written summary · about
chapters (16)
- 0:00Introduction
- 2:58Java for low latency
- 4:47Defining low latency
- 11:57High frequency trading system architecture
- 13:44Low latency requirements
- 17:37Fast transport in Java
- 24:37Memory usage in Java
- 29:49CPU cache leveraging
- 32:21Cache-friendly Java code
- 35:32Concurrency and logging
- 37:19Java compilation optimizes
- 48:08Java vs C/C++
- 49:10Low latency resources
- 50:36Q&A outliers
- 54:12Reactive frameworks
- 56:43Q&A wrap-up
related talks
35mJava at Speed: Building a Better JVM
52mLow Latency Java in the Real World: LMAX Exchange & the Zing JVM
44mJava at Speed: Building a Better JVM.
01h 03mKeeping Your Java Hot.
47mUltralow Latency with Java 11 and Terabytes of Data
21mFaster Data With Faster Java
01h 02mWhy Java (like a good wine) becomes better with age even if you don’t use the latest features
51mJava at Speed: Getting the Most Out of Modern Hardware
