What is redundancy?

Extra capacity or backup components kept in place so that a single failure does not stop the whole system.

Redundancy diagram example

Public diagram from the Machinations Community. Open it on its own page

Redundancy means building in more capacity than normal operation needs, so that when one part fails another can take over. It is the main way engineers trade steady extra cost for protection against rare but expensive outages. Deciding how much to buy is a risk decision: too little and one fault stops everything, too much and money sits idle.

How it works

The basic idea is that a system with several independent paths fails only when all of them fail. If one server is down 2% of the time and failures are independent, two servers together are both down about 0.02 x 0.02 = 0.04% of the time. Each extra copy cuts the failure probability sharply, but adds its own cost and gives smaller and smaller gains.

The catch is that real failures are often not independent. Two backups that share a power feed, a software bug or a supplier fail together, which is called a common-cause failure. Redundancy also adds complexity, and a failover mechanism that was never tested can itself be the thing that breaks.

Example

Say a payment service needs 4 servers to carry its peak load, and each server is unavailable 1% of the time on its own. With exactly 4 servers, any single failure reduces capacity and the chance that all 4 are healthy is about 0.99 to the power 4, roughly 96%. Add a fifth spare and the service survives any single failure, so it is short of capacity only when two or more are down at once, which happens well under 1% of the time. The spare costs 25% more hardware in exchange for cutting the shortfall risk from about 4% to under 0.1%. This is an illustration with round numbers.

How to model it in Machinations

Draw the servers as a Pool holding working units, with a Drain for failures and a Delay for repair time. Use a Gate with a probability to decide which units fail each step, and a Register that compares working units to the required load. Make the number of spares a Lever, then Play many times and use the charts to see how often capacity falls short at each spare count.

See redundancy in a system you can Play

Build the rules in a Machinations diagram, change a value and Play it to watch how the system responds.