The Bulkhead pattern is a fault tolerance design pattern that isolates elements of an application into independent resource pools, so a failure in one pool does not cascade and cause a total system outage. Inspired by the watertight compartments in a ship's hull, this pattern prevents a single point of failure from consuming all shared resources—like threads, connections, or memory—thereby preserving the availability of other system components. It is a foundational technique for building resilient multi-agent systems and microservices architectures.
