Designing for low latency is hard. We need principles to help us navigate the performance landscape. I'll present here a ranked set of guidelines to lead you through the maze of trade-offs that you will meet in designing a low latency application: 1. No Garbage – none, really? 2. Natural Batching and why you need it. 3. Threads are evil. 4. No exceptions! 5. The Single Writer Principle. 6. Sharing isn’t caring. 7. Good programmers copy, great programmers … don't. We'll look at the implementation of these principles in the Aeron messaging system and the measured benefit of using them. Applying these principles to the design of any application – low latency or otherwise – will result in a less complex, more efficient, more maintainable system.
Get notified about new features and conference additions.