GenerateRandomSearch

System Reliability Calculator

Availability does not add up the way intuition suggests. Five parts each up 99% of the time, all needed at once, give a system up only 95% of the time — a fivefold increase in downtime for no visible reason. Put the same two parts side by side instead and 99% becomes 99.99%, turning nearly four days of downtime a year into under an hour. The arithmetic is short, and it is worth doing before the architecture is fixed.

What this generator does

Combines the parts' availability according to the arrangement, and reports both the resulting figure and the hours of downtime a year it implies.

How to use this tool

  1. Choose whether the parts sit in a chain, side by side, or some-of-many.
  2. Set how many parts there are and how available each one is.
  3. Read the system figure and the hours of downtime it implies.
  4. Try adding one spare, which usually does more than improving a part.

Understanding the controls

Arrangement
A chain needs every part working. Spares need only one. Some-of-many is the quorum case, where a set number must be up.
How many parts
Between 1 and 16. Sixteen is the ceiling because every combination of working and failed parts is enumerated as a check, and there are 65,536 of them.
Each part's availability
How often one part is working, as a percentage. Three nines is 99.9%, which is nearly nine hours of downtime a year.

Common use cases

  • Working out what uptime an architecture can actually promise
  • Deciding whether to add a spare or improve an existing part
  • Sanity-checking an availability figure in a service agreement
  • Explaining why a chain of reliable parts is not a reliable system
  • Sizing a quorum where some number of nodes must be up

How this generator works

The formula for the arrangement is worked out first, and then the same figure is worked out a second way: by going through every combination of parts working and failed, multiplying the probabilities, and adding up the combinations where enough parts survive. The two must agree to the last decimal. Two further conditions are checked — that a chain never beats its weakest part, and that spares never do worse than the best single part.

Randomness and fairness

Nothing is random. The same parts and arrangement always give the same figure.

For how randomness is produced across the whole site, see how Generate Random works.

Limitations and good to know

  • Parts are assumed to fail independently. Shared power, a shared rack or a shared dependency breaks that badly, and is the usual reason real systems miss their figures.
  • Every part is given the same availability here, so mixed hardware needs working out a part at a time.
  • Availability is not the same as reliability: this says how often something is up, not how long it runs before failing.
  • Repair time, detection delay and failover time are not modelled, and all three eat into the real figure.

Privacy and your data

Figures stay in your browser. Nothing about your system is transmitted or stored.