In this 5 part series, we’ll cover the topic of latency in messaging systems. For the purpose of this series, we refer to latency as the time it takes for binary or ascii messages to travel from a sending source to a receiving destination. There are numerous factors along the message path that ultimately contribute to message latency which we will cover in this series.
As many of you know, latency, along with throughput is a key component of the performance equation for any information technology system. Despite marketing hype, latency will never be zero. Incredibly however, modern day hardware and software technologies are providing customers with the ability to achieve remarkably small latency measures. If you want to radically empower your high-performance messaging strategies it is essential you understand how the functions and characteristics of all components along the message path contribute to latency.
Air Travel Example
During a recent trip to Argentina, quick math allowed me to estimate travel time between my originating city in New Jersey and my destination, Buenos Aires, to be 15 hours and 7 minutes. These estimates were based on a combination of tacit and explicit knowledge regarding the time it takes to pack, get to the airport, check in, clear security, reported flight times, as well as similar overhead upon arriving at my destination (i.e. retrieve baggage, clear customs and immigration etc). While these estimates held upon reaching the airport, they simply broke down once an 8 hour delay was announced by my chosen air carrier.
Knowing the different sources of latency in my travel, as well as having empirical data that shows how these sources behave in different situations (i.e. holiday travel vs. weekend travel) can help me better design an itinerary where actual travel time is more closely aligned with estimated travel time.
This same logic applies to low-latency messaging technologies. Ensuring your low-latency needs are met requires an understanding of the different components of latency along the message path.