Measures of Correctness in Distributed Systems
Let's see how to measure the correctness of a distributed system.
We'll cover the following
Correctness
We can define the correctness of a system in terms of the properties it must satisfy.
Measures of Correctness
The correctness measures for distributed systems are the two properties they must satisfy. These are the following:
- Safety property
- Liveness property
Safety
A safety property defines something that must never happen in a correct system.
Liveness
A liveness property defines something that must eventually happen in a correct system.
Example of a correct system
If we consider the correct properties of an oven, we can say that “the oven not exceeding a maximum temperature threshold” is a safety property. The property of “the oven eventually reaching the temperature we specified via the button” is a liveness property.
Similar to this example, it’s usually more important in distributed systems to ensure the system satisfies the safety property than the liveness one.
Throughout this course, it will become clear that there is an inherent tension between safety and liveness properties. Actually, as we will see later in this course, there are some problems that make it physically impossible to satisfy both kinds of properties. So, we need to compromise some liveness properties to maintain safety.
Get hands-on with 1400+ tech skills courses.