Skip to content
Optimal Lab

System design · interactive

Availability and the nines

A request needs the load balancer, an app server and the database all working. Availabilities in a chain multiply, so the whole is worse than any part. Redundant copies in parallel multiply the failure chances instead, which buys back the nines.

Load balancer

99.990%

→

App ×1

99.900%

→

Database ×1

99.950%

Availability
99.840%
Nines
2.8
Down per year
14.0 h

1.2 h a month · single parts: app 99.9%, db 99.95%, LB 99.99%

Three parts in a chain: 99.99% × 99.9% × 99.95% = 99.840%, worse than every one of them. Over 14 hours of downtime a year.

  1. 1

  2. 2

    Ten 99.9% services in a request path give about 99%. Every hard dependency counts.

    A = a₁ × a₂ × a₃

  3. 3

  4. 4

In production

Tools and technologies

Every SLA is expressed in nines.

Not tied to one language — use these names when you search docs or design a system.