Building Low Latency Microservices & Monoliths in Java
summary
Argues for building Java services as small single‑core components with private caches (L1 32KB, L2 256KB), using a Lambda architecture of replayable events and moving noncritical work off the latency path. Demonstrates Chronicle Queue as a brokerless, persisted unbounded queue that yields <10 µs 99% in benchmarks, lets teams copy production files to test and replay inputs, and removes flow control. Gives a concrete bug: a 1-in-100,000 450 µs tail changed to 35 µs by replacing LocalDateTime, and shows unit-testable business components with optional transports.
AI-written summary · about
chapters (31)
- 0:00Introduction
- 1:29My first computer
- 2:13Microservices
- 4:39Web Page Size
- 6:57Chart
- 8:55Asynchronous messaging
- 9:57Low latency definition
- 11:26Low latency example
- 12:44Doing less work
- 14:50Componentbased design
- 17:33Lambda architecture
- 19:09Putting it all together
- 22:55Distributed Systems
- 24:11Single Core Processes
- 24:34Single Core Example
- 25:21CPU Layout
- 25:48Thread Affinity
- 28:12Challenges
- 28:26Approach
- 29:33Example
- 30:07Data Model
- 31:09Data Model Example
- 31:30Mocking Component
- 31:43Testing Component
- 33:19Transports
- 33:52Chronicle Queue
- 36:22Microsoft JMH
- 37:09Flow Control
- 38:49Examples
- 39:09Products
- 39:38Summary
related talks
23mLightning Talk: Rethinking Microservices
40mHigh-Performance Java-Cloud-Native Apps & Microservices
52mContainerless, Bloatless, YAML-less, Serverless Java #slideless
24mServerless Java hacks: Think different and leave old habits...
39mBuild blazingly fast, ultra lightweight cloud native Java enterprise applications
52mBulletproof Java Enterprise Applications for The Hard Production Life
01h 01mJava compilers: Why Java is one of the first options for Low latency apps
41mCloud Chaos & Microservices Mayhem
