पाठ 1 / 25

Scalability, Availability and Reliability

Define the three properties precisely and tell them apart from latency, throughput and durability.

Three related but different promises

Scalability is the ability to handle more load (users, requests, data) by adding resources, with performance staying acceptable and cost growing roughly in proportion. Availability is the fraction of time a system is able to serve requests, usually measured as successful requests divided by total requests, or as uptime over a period. Reliability is the probability that a system does the right thing over time: correct results, no data loss, predictable behaviour under failure. A system can be available but unreliable (it answers quickly with wrong data) or reliable but not scalable (correct, until traffic doubles). Two more terms come up constantly: latency, how long one request takes, and throughput, how many requests are completed per second. Durability is the guarantee that committed data survives failures, which is about storage rather than serving.

Three properties of a production system

Scalability handles growth, availability keeps the system answering, reliability keeps the answers right.

Three overlapping circles of different shades, with a small upward arrow in one, a clock in another and a check mark in the third.
Figure 1.1 — Scalability, availability and reliability overlap but are not the same.

Telling them apart with examples

Each line describes a failure of exactly one property.

scalability  - the site is fine at 1,000 users but times out at 20,000 during a sale
availability - the API returns 503 for 40 minutes while a database fails over
reliability  - the API is up, but 1 in 500 payments is recorded twice
durability   - a disk fails and the last hour of uploads is gone
latency      - search is correct and up, but p99 response time is 4 seconds
throughput   - the system can only process 300 orders per second at peak

Define the words in every design review

Teams often argue past each other because one person means availability and another means reliability. Start reviews by writing down which property, measured how, is the goal.

त्वरित जाँच: An API responds quickly to every request but sometimes returns stale, incorrect balances. Which property is weak?

  • Reliability (correctness)
  • Availability
  • Scalability
  • Throughput
Answer

Reliability (correctness) — It is available and fast, but not doing the right thing consistently.