Ein Circuit Breaker zählt Fehler gegen eine Dependency, öffnet ab einem Schwellwert, sodass Aufrufe sofort scheitern statt sich zu stauen, und geht dann halb offen, um die Erholung mit einem Rinnsal Traffic zu testen. Er schützt Thread- und Connection-Pools vor Erschöpfung und stoppt kaskadierende Fehler. Er schadet, wenn die Schwellwerte zu eng sind, wenn der Fallback schlimmer ist als der Fehler, oder wenn alle Instanzen gleichzeitig öffnen und die Dependency nie genug Traffic bekommt, um ihre Erholung zu beweisen.
Warum Interviewer das fragen
Interviewer nutzen das, um zu sehen, ob du Resilienz-Patterns als Werkzeuge mit Trade-offs behandelst statt als Schalter, den man umlegt. Die stärksten Antworten decken den Half-Open-Zustand ab, die Isolation pro Dependency (ein Breaker für den ganzen Service ist nutzlos) und den ehrlichen Fehlermodus, in dem ein Breaker aus einer langsamen Dependency einen harten Ausfall für Funktionalität macht, die funktioniert hätte.
So baust du deine Antwort auf
- Beschreib die drei Zustände und was jeden Übergang auslöst.
- Sag, welche Ressource der Breaker tatsächlich schützt.
- Skalier Breaker pro Dependency und pro Endpoint, nicht pro Prozess.
- Gib einen konkreten Fall, in dem das Öffnen die falsche Entscheidung war.
Beispielantwort
Geschlossen, offen, halb offen. Du zählst Fehler über ein rollierendes Fenster, und sobald du den Schwellwert überschreitest, öffnest du den Kreis und scheiterst für eine Abkühlphase sofort, danach lässt du ein paar Probe-Requests durch, um zu sehen, ob die Dependency wieder gesund ist. Der eigentliche Punkt ist, deine eigenen Ressourcen zu schützen. Braucht ein Downstream 30 Sekunden bis zum Timeout, parkt jeder Worker-Thread darauf und dein Service stirbt an etwas, das nicht deine Schuld war. Schiefgehen kann es bei Umfang und Tuning. Wir hatten einen Breaker auf Service-Ebene statt pro Dependency, ein flakiger Empfehlungs-Aufruf hat also den Kreis auch für den Checkout geöffnet, und das war ein deutlich größerer Ausfall als der, den wir verhindern wollten. Die andere Falle ist das Half-Open-Rinnsal. Öffnen alle Replicas gleichzeitig und proben selten, sieht der Downstream fast keinen Traffic, und du bleibst viel länger dunkel, als der eigentliche Fehler gedauert hat.
Steht dieses Vorstellungsgespräch bald an? GhostPilot hört bei deinem Live-Call mit, erkennt die Frage in dem Moment, in dem sie gestellt wird, und bringt dir eine strukturierte Antwort in Echtzeit auf den Bildschirm. Probier es im nächsten Mock aus, oder hol dir einen $29 Session Pass, kein Abo, für den Ernstfall.
So funktioniert esNachfragen, mit denen du rechnen solltest
- Wie würdest du den Fehlerschwellwert und das Reset-Timeout wählen?
- Was ist Bulkheading, und wie ergänzt es einen Circuit Breaker?
- Was sollte der Fallback-Pfad zurückgeben, wenn der Kreis offen ist?
Weitere Fragen für Site Reliability Engineer
Dein Interviewer stellt seine eigene Version davon. Kopier deine echte Stellenbeschreibung in den kostenlosen Question Predictor und bekomm die 20 Fragen, die diese Rolle am wahrscheinlichsten stellt, samt dem, worauf jede wirklich abzielt.
Meine Fragen vorhersagen