Practical techniques for delivering low latency software.
From first principles to production-ready code,
Latency teaches you how to make your software faster at every layer of the stack. You’ll learn what latency really is, how it differs from bandwidth, and why it matters for user experience. Then, guided by practical examples, you’ll apply Little’s Law, design lock-free algorithms, and architect caching systems that scale. You’ll discover how your code runs differently on distributed systems, databases, and operating systems, and understand the common latency-causing issues in each situation.
In
Latency you’ll learn how to:
- Define latency, distinguish it from bandwidth, and understand its impact on user experience
- Model performance with Little’s Law and Amdahl’s Law, then measure and visualize delays
- Optimize data access with colocation, replication, partitioning, and caching
- Accelerate logic with algorithmic improvements, memory tuning, and lock-free concurrency
- Minimize delays with asynchronous processing, predictive techniques, and speculative execution
Put simply, latency is the delay between a cause and effect. In practice, too much latency can create problems throughout a software system, ranging from inaccurate calculations and timeouts to impatient users simply abandoning your applications. Latency issues can be challenging to avoid and troubleshoot. This book balances theory with practical implementations, turning academic research into useful techniques you can apply to your projects.