Circuit breaker
Een circuit breaker blokkeert aanroepen naar een falende dienst en laat later beperkte proefaanroepen toe.
Een circuit breaker beschermt een applicatie tegen het voortdurend aanroepen van een falende afhankelijke dienst. Hij beoordeelt bepaalde fouten en beslist of nieuwe aanroepen mogen doorgaan. Na een vastgelegde wachttijd kunnen beperkte proefaanroepen het herstel controleren.
Drie toestanden met verschillende vrijgaven
In closed gaan aanroepen normaal door. In open worden ze geweigerd zonder ze naar de betrokken dienst door te sturen. half-open laat alleen beperkte proefaanroepen toe; hun uitkomsten bepalen of aanroepen weer worden geblokkeerd of normaal bedrijf wordt hervat.
In een fictief klantportaal valt de dienst voor PDF-rapporten uit. De geopende circuit breaker voorkomt nieuwe aanroepen naar die dienst en het portaal toont dat deze tijdelijk niet beschikbaar is. Het mechanisme slaat daarmee nog geen rapportopdracht op in een wachtrij en herstelt de dienst niet.
Het team bepaalt fouttypen, beoordelingsvenster, drempel, wachttijd en terugvalgedrag. Een timeout begrenst de duur van één aanroep; een retry start een nieuwe poging. De circuit breaker beslist over het doorsturen. Deze mechanismen kunnen samenwerken, maar hun regels moeten op elkaar aansluiten.
Bronnen
Verwante begrippen
- RetrystrategieEen retrystrategie bepaalt welke fouten opnieuw worden geprobeerd, met welke pauzes en tot welke grens.
- Exponentiële back-offExponentiële back-off vermenigvuldigt de wachttijd tussen nieuwe pogingen tot een ingestelde bovengrens.
- Server-Sent EventsServer-Sent Events verstuurt tekstmeldingen van server naar client via HTTP, bijvoorbeeld over de voortgang van een achtergrondtaak.
- ETagEen ETag identificeert een bepaalde representatieversie van een HTTP-resource en ondersteunt voorwaardelijk lezen of wijzigen.
- Cross-Origin Resource SharingCORS regelt browsertoegang tot antwoorden van een andere origin. Het vervangt geen API-aanmelding of controle van toegangsrechten.
- Electronic Data InterchangeEDI verstuurt gestructureerde bedrijfsdocumenten tussen systemen. Formaat, partnerprofiel, gegevensmapping en terugmeldingen moeten op elkaar aansluiten.
Uw project met ASES
Beschrijf ons uw project. We nemen contact met u op met een eerste inschatting.