Performance Metrics for Distributed Systems: Latency, Round-Trip Time & Throughput
We will discuss the metrics used to measure performance like Latency, Round Trip Time, Throughput and Transfer times
Takeout dinner tonight?
Before we jump into the definitions, let’s look at a scenario.
Jack and Jill didn’t want to cook one day so they decided to have takeout for dinner. Jack offered to drive and pick up the food from a nearby restaurant.
Here’s how Jack’s journey progressed:
-
He drove to the restaurant from home. It took him 10 minutes to reach the restaurant.
-
When he arrived at the restaurant, there were 4 people ahead of him in the line. Each person took 1 minute to submit their order. He waited 5 minutes to reach the order counter.
-
Once he had placed the order, his food was ready in 20 minutes.
-
On his drive back to home, Jack experienced heavier than usual traffic and it took him 15 minutes to reach home.
-
Waiting patiently at home, Jill observed that it took Jack 50 minutes to bring dinner. She didn’t know the breakdown of the time spent at each step.
Keeping this carryout trip in mind, let us look at the metrics that we will use to evaluate the performance of a distributed system.
System Performance Metrics
Consider a typical interaction between a client and a server.
- Client sends a Request.
- Server receives the request.
- Server keeps the request in a queue before processing it.
- Server does the work.
- Server sends the Response back.
- Client receives the response.
Using this client-server interaction as an example, we’ll look at the following common metrics used to measure the performance of the distributed systems
- Request Transfer Time
- Server Latency
- Processing Time
- Response Transfer Time
- Round Trip Time or Response Time
- Throughput
One thing that you might notice below is that almost every delay can be called “Latency” and different people use the word Latency to describe different delays.
Hence context is very important when you read ...