jargon

Comparison

BulkheadvsNoisy neighbour

Bulkhead

you give each downstream its own pool of connections so one slow dependency cannot consume every thread you have.

Partitioning resources so that exhaustion in one compartment cannot sink the whole service. In practice: separate connection pools, thread pools or instances per dependency or per tenant. It converts a total outage into a partial one, which is the entire goal of resilience engineering.

Full entry →

Noisy neighbour

one customer's enormous batch job makes every other customer's requests slow, on shared infrastructure they cannot see.

One tenant's resource consumption degrading others on shared infrastructure. It is the defining operational problem of multi-tenancy, and it appears at every layer: CPU, connection pools, cache space, database locks. Per-tenant quotas, bulkheads and fair queueing are the mitigations; "we will notice" is not.

Full entry →

Related comparisons