Bulkheads isolate components so failure in one does not sink the whole system. Named after ship compartments.
Implementation levels:
Thread pool isolation:
Separate thread pools per dependency. Slow database does not exhaust threads for cache calls.
Process isolation:
Critical services in separate processes. Memory leak in one does not crash others.
Container isolation:
Resource limits (CPU, memory) per service. One service cannot starve others.
Benefits:
Fault isolation, predictable degradation, easier debugging. Essential for microservices.