Backpressure¶
Core Idea¶
The arrangement in which a return signal from a downstream stage tells upstream stages to slow, pause, or block until capacity reappears — converting a one-way push into a two-way conversation so the limiting consumer sets the sustainable rate of the whole system.
How would you explain it like I'm…
Hands Are Full
Slow-Down Signal
The Bottleneck Sets the Pace
Broad Use¶
- Software and streaming: Reactive-streams demand signals, HTTP/2 flow control, and TCP's receive window.
- Manufacturing: The Kanban pull system, where a freed card is the backpressure that bounds work-in-progress.
- Plumbing and hydraulics: Literal back-pressure as a clog raises pressure until the source slows or a relief valve opens.
- Cardiovascular physiology: Pressure backing up through the pulmonary system — edema — when the ventricle cannot keep pace.
- Supply chains: The back-order from a stockout, which without visibility becomes the bullwhip effect.
- Human pipelines: SLA-based throttles or desk rejection that gate intake when a team is at capacity.
Clarity¶
It separates three confused quantities — instantaneous production rate, sustainable system rate, and queue depth — insisting that only the second is real throughput, and exposes that removing the explicit channel merely routes backpressure through an uglier failure mode.
Manages Complexity¶
It replaces a global stability problem with local, decidable choices at each stage: how much buffer, what signal, and what to do when the buffer is full — giving the system a definable steady state.
Abstract Reasoning¶
It makes the sustainable rate a derived quantity (the bottleneck's capacity) and predicts that an unthrottled chain fails discontinuously at its weakest stage, with the failure mode set by whether a buffer, a channel, or a loss policy absorbs the mismatch.
Knowledge Transfer¶
- Manufacturing to engineering teams: The Kanban work-in-progress limit ports to clinics, legal dockets, and any pull-gated supply.
- Software to physical supply: The reactive-streams request protocol is the same fact as a Kanban card — only the medium differs.
- Cardiac medicine to software: Afterload reasoning maps onto why a slow database upgrade topples an upstream microservice fleet.
Example¶
On a Toyota-style line, a downstream station pulls a part only when it holds a free Kanban card, and that freed card travelling upstream is the return signal carrying "I have capacity for one more," so work-in-progress cannot pile up beyond the card count.
Relationships to Other Primes¶
Parents (1) — more general patterns this builds on
- Backpressure is a kind of Feedback — Backpressure is a SPECIFIC negative-feedback loop whose controlled variable is capacity-headroom and whose effect is to throttle production toward the bottleneck rate — a specialization of feedback (the genus, which also covers positive/non-throttling loops).
Path to root: Backpressure → Feedback
Not to Be Confused With¶
- Backpressure is not the Bottleneck because a bottleneck is the structural fact that one stage limits the whole, whereas backpressure is the signaling mechanism that communicates that limit upstream.
- Backpressure is not Buffering because buffering absorbs a rate mismatch in a queue, whereas backpressure slows the source — and an over-large buffer actively hides the backpressure signal.
- Backpressure is not generic Feedback because it is the specific negative-feedback loop whose controlled variable is capacity headroom and whose effect is to throttle production toward the bottleneck rate.