Bulkheads & Backpressure
Isolate failures within bounded resource pools so a noisy neighbor can't starve everyone else.
The bulkhead pattern takes its name from a ship's hull, which is divided into watertight compartments so that a breach in one does not flood the entire vessel. Applied to software, it means partitioning resources — thread pools, connection pools, queues — so that a failure or overload in one part of the system is contained and cannot consume the resources every other part depends on. The problem it prevents is resource starvation: one slow dependency soaking up every thread and taking down functionality that had nothing to do with it.
A ship's watertight compartments: a hull breach floods one section but the bulkheads keep the rest dry so the ship stays afloat.