What cascading failure forbids
What this article forbids
- It forbids buying availability past your most-shared component. Replicas, retries and failover all stop paying at that ceiling.
- It forbids assuming independence you did not deliberately engineer. Independence is a physical and organizational property, never a software one.
- It forbids maintaining a global invariant through local configuration. Timeout coherence, retry budgets and deadline discipline cannot be achieved by asking each team to be careful.
Escapes and costs
| Escape | Removes | Paid in |
|---|---|---|
| Soften dependencies (fallback, cache, degrade) | Terms from the a^N exponent | Fallback paths that must be exercised, or they do not exist |
| Bulkhead (a pool per dependency) | Resource-mediated coupling | About √k loss of multiplexing |
| Deadline propagation / shared RPC layer | Timeout incoherence | Viral plumbing; a mandated shared runtime |
| Cells | Correlated global change | k× loss of multiplexing; no cross-cell operations; a new router |
| Shuffle sharding | Tenant-to-tenant correlation | Requires retryable, stateless requests; no capacity isolation |
| Static stability | Control-plane dependency on the hot path | Staleness; pre-provisioned idle capacity |