Dictionary

Circuit breaker

Een circuit breaker stopt tijdelijk met calls naar een falend systeem zodra fouten een grens overschrijden. Zo faalt je applicatie sneller en krijgt de afhankelijke dienst tijd om te herstellen.

Wat is een circuit breaker?

Een circuit breaker is een patroon dat calls naar een falend systeem tijdelijk stopt. Als te veel requests mislukken of time-outs geven, gaat de breaker open. Nieuwe calls worden dan meteen geweigerd of krijgen een fallback, in plaats van opnieuw het falende systeem te belasten.

De naam komt van een elektrische zekering. Als er te veel fout loopt, onderbreek je de verbinding om grotere schade te vermijden.

In software helpt dit tegen cascade failures. Eén trage externe API mag niet je hele applicatie of datapijplijn vastzetten.

Hoe werkt een circuit breaker?

Een circuit breaker heeft meestal drie toestanden.

  • Closed. Alles werkt normaal. Calls gaan door naar de externe dienst.

  • Open. De foutgrens is overschreden. Calls worden tijdelijk niet doorgelaten.

  • Half-open. Na een wachttijd laat je enkele testcalls door. Slagen die, dan sluit de breaker opnieuw. Falen ze, dan blijft hij open.

De grens kan gebaseerd zijn op aantal fouten, foutpercentage, time-outs of een combinatie daarvan.

Wanneer gebruik je een circuit breaker?

  • Bij externe API's. Je hebt geen controle over hun beschikbaarheid of snelheid.

  • Bij trage afhankelijkheden. Time-outs kunnen threads, workers of connecties uitputten.

  • Bij integratieplatformen. Eén kapotte connector mag de rest van de verwerking niet blokkeren.

  • Bij gebruikersschermen. Een fallback of nette foutmelding is beter dan eindeloos wachten.

Circuit breaker versus retry

Een retry zegt: probeer nog eens, want de fout is misschien tijdelijk. Een circuit breaker zegt: stop even, want het systeem faalt te vaak.

Ze horen vaak samen. Eerst probeer je een paar keer met exponential backoff. Blijven calls falen, dan opent de breaker en voorkom je dat elke nieuwe request dezelfde retry-storm begint.

Waar moet je op letten bij een circuit breaker

  • Kies drempels bewust. Te gevoelig betekent onnodig open. Te traag betekent dat je alsnog overbelasting doorlaat.

  • Maak fallbacks eerlijk. Toon oude data of een beperkte functie alleen als dat duidelijk genoeg is voor het proces.

  • Monitor de toestand. Een breaker die vaak open gaat, wijst op een onderliggend probleem.

  • Gebruik time-outs. Zonder goede time-outs duurt het te lang voor de breaker leert dat iets faalt.

FAQ over circuit breakers

1. Is een circuit breaker hetzelfde als een rate limit?
Nee. Een rate limit beperkt hoeveel requests mogen binnenkomen. Een circuit breaker stopt calls omdat de afhankelijkheid faalt.

2. Moet elke API-call een circuit breaker hebben?
Niet altijd. Gebruik hem vooral voor afhankelijkheden waar traagheid of falen je eigen systeem kan meesleuren.

3. Lost een circuit breaker de fout op?
Nee. Hij beperkt schade en geeft tijd om te herstellen. De oorzaak moet je nog altijd oplossen.

Laatst Bijgewerkt: July 9, 2026 Terug naar Woordenboek
Trefwoorden
circuit breaker retry policy exponential backoff message queue api foutafhandeling idempotentie datapijplijn