Removing single points of failure across every layer
coreintermediateA single point of failure (SPOF) is any one component whose failure alone takes the whole system down. High availability is not a property of one clever component — it is the result of walking every layer a request passes through (load balancer, application instances, database, cache, queue, storage, network) and making sure each one individually survives losing an instance, a zone, or a link. Missing even one layer means the system's real availability is capped at that one un-redundant component, no matter how redundant everything else is.
Think of it as
Think of the request path as a chain of links, each link being one layer of the stack. A chain is only as strong as its weakest link — it does not matter if six of seven links are forged from titanium if the seventh is a paperclip. Eliminating SPOFs means inspecting every link, not just the ones that are easy or obvious to make redundant (people naturally reach for redundant app servers first because it is the cheapest and most familiar move, then stop).
What we're doing: Audit a system that already calls itself "highly available" and find the layers that were skipped.
- 7
- A single load balancer instance undoes every other layer's redundancy -- nothing can reach the four redundant app instances if it goes down.
- 10
- A single Redis node with no replica is a SPOF even though the queue right below it was clustered correctly -- each layer has to be checked on its own.
- 12
- A single-zone bucket is a SPOF for the same reason a single-AZ database would be: losing that one zone loses the data path entirely.
Why this works: The audit shows why "we have multiple app instances" is not the same claim as "we removed single points of failure" -- each of the seven layers can independently hide an un-redundant component, and app instances happening to be redundant says nothing about the other six.
Treating "we autoscale the app tier" as equivalent to "no single points of failure"
Wrong
Better
What you see: The app tier survives instance loss cleanly in every drill, then the entire system goes down the first time the single cache node or single-zone bucket has an incident -- a layer nobody thought to re-check because the autoscaling group made the app tier feel "handled."
Why: Autoscaling only guarantees the app tier keeps its instance count -- it says nothing about the load balancer, cache, queue, storage, or database sitting next to it. Each layer needs its own explicit redundancy decision; solving one layer well creates a false sense that the whole system is covered.
- Load balancer — redundant pair, not one instance
- Application instances — spread across multiple AZs
- Database — primary + replica(s), automated failover
- Cache — clustered, not one node
- Queue / broker — replicated partitions
- Storage — replicated disks or multi-zone object store
- Network — redundant paths, no single switch or NIC
Layer-by-layer SPOF elimination across the request path
Remember: High availability means walking all seven layers explicitly -- load balancer, application instances, database, cache, queue, storage, network -- and giving each one its own redundancy answer. Fixing the layers that are easy to remember while skipping cache, queue, storage or networking leaves a real SPOF hiding behind a system that otherwise looks redundant.
See also: no spof claim · redundancy toolkit · health checks and failover

