Magne Gåsland
2 min readMar 2, 2021

Sorry for being presumptuous. The suggestion was well intended. I do think it was correct, though.

You wrote:

"Backpressure is when the progress of turning that input to output is resisted in some way. In most cases that resistance is computational speed"

"By the way, you might eventually hear someone use the word “backpressure” to actually mean something has the ability to control or handle backpressure. For example, if someone says: “I made this new library with built-in backpressure…” they probably mean it somehow handles backpressure for you, not that it actually causes it."

But other industry sources corroborate the slightly different understanding that I gave:

"In the world of software, “backpressure” refers to actions taken by systems to “push back” downstream forces. As such, it is a defensive action taken unilaterally while under duress or if the aggregate call pattern exhibits too many spikes, or is too bursty.

As an operational pattern, backpressure helps equalize the traffic characteristics to protect systems from overload. Without a mechanism like backpressure, a multitude of adverse effects, from intermittent systemic failures to system collapse can occur."

Source: Glasnostic - Microservice analytics and traffic control -https://glasnostic.com/blog/preventing-systemic-failure-backpressure

"When one component is struggling to keep-up, the system as a whole needs to respond in a sensible way. It is unacceptable for the component under stress to fail catastrophically or to drop messages in an uncontrolled fashion. Since it can’t cope and it can’t fail it should communicate the fact that it is under stress to upstream components and so get them to reduce the load.

This back-pressure is an important feedback mechanism that allows systems to gracefully respond to load rather than collapse under it. The back-pressure may bubble all the way up to the user, at which point responsiveness may degrade, but this mechanism will ensure that the system is resilient under load, and will provide information that may allow the system itself to apply other resources to help distribute the load, see Elasticity."

Source: Reactive Manifesto -https://www.reactivemanifesto.org/glossary#Back-Pressure

Sign up to discover human stories that deepen your understanding of the world.

Free

Distraction-free reading. No ads.

Organize your knowledge with lists and highlights.

Tell your story. Find your audience.

Membership

Read member-only stories

Support writers you read most

Earn money for your writing

Listen to audio narrations

Read offline with the Medium app

Magne Gåsland
Magne Gåsland

Written by Magne Gåsland

MSc. in Computer Science, independent consultant, and curious philosopher.

Responses (3)

What are your thoughts?

> “Always apply Back Pressure.”
Source: Jonas Bonér, creator of Akka, founder/CTO of Lightbend, and Chair of the Reactive Foundation, @ https://youtu.be/e5kek8vx2ws?t=3327

If you check out https://nodejs.org/en/docs/guides/backpressuring-in-streams/, you'll be surprised on one thing in the whole article — it uses the term 'backpressure' both as a good thing (in that we have to put pressure back on the source) and as a…

Well, I think you are right.
I tried getting my head around backpressure being the 'bad thing', but it just doesn't work out for me as much as does the 'good thing' analogy which you've put forward.
In your way, the term 'back pressure' makes a lot…