Backpressure (przeciwciśnienie)
Wolny odbiorca sygnalizuje nadawcy, żeby zwolnił, zamiast buforować pracę, aż skończy się pamięć albo miejsce w kolejce.
Gdy nadawcy są szybsi niż odbiorcy, nieograniczony bufor rośnie, aż coś padnie, często daleko od przyczyny. Backpressure czyni limit widocznym: ograniczone kolejki, które odmawiają nowych elementów, strumienie, które pobierają zamiast przyjmować, limity zwracane wywołującym i odbiorcy, którzy biorą kolejną partię dopiero, gdy są gotowi. Razem ze zrzucaniem obciążenia sprawia, że przeciążony system jest wolny, a nie martwy.
Powiązane hasła
- Zrzucanie obciążenia (load shedding): Celowe odrzucanie części zapytań, gdy system jest przeciążony, żeby reszta dalej była obsłużona, zamiast żeby stanęło wszystko.
- Dostarczenie co najmniej raz (at-least-once delivery): Gwarancja kolejki albo brokera, że każda wiadomość dotrze, być może więcej niż raz, więc konsumenci muszą radzić sobie z duplikatami.
- Wzorzec bulkhead (grodzie): Danie każdej zależności albo rodzajowi pracy własnej, ograniczonej puli połączeń albo workerów, żeby jedna wolna część nie zużyła wszystkiego.
