Skip to content

Load Shedding

Under overload, attempting to serve all requests guarantees poor performance for everyone; deliberately rejecting some requests (shedding load) preserves good performance for accepted requests, maintaining overall system value.

Tension Addressed

Latency vs. Correctness (explicitly trades some requests for maintaining latency on others)

Recognizable As

HTTP 503 Service Unavailable; priority queues; admission control; request prioritization; "fail open" vs "fail closed" policies; overload protection

Canonical Sources

Welsh et al., "SEDA: An Architecture for Well-Conditioned, Scalable Internet Services" (2001); Google SRE Book (2016) - load shedding

Transfers To

Operating Systems (admission control), Electrical Grids (rolling blackouts), Triage Medicine (patient prioritization), Airport Security (queue management)

Load shedding recognizes that under overload, queuing theory works against you: adding more requests to an overloaded system increases everyone's wait time. Rejecting requests immediately (503) is better than accepting them into a queue they'll timeout waiting in.

Sub-concepts: - Priority-based Shedding: Reject lower-priority work first - Deadline-aware Shedding: Reject requests whose deadlines have already passed