1.3 KiB
1.3 KiB
title, created, updated, type, tags, confidence, contested, sources
| title | created | updated | type | tags | confidence | contested | sources | |||
|---|---|---|---|---|---|---|---|---|---|---|
| Circuit Breaker | 2026-06-06 | 2026-06-06 | concept |
|
medium | false |
⚡ Circuit Breaker
Définition Courte
Pattern de résilience qui interrompt les appels vers un service en panne pour éviter la cascade d'échecs, en ouvrant un "circuit" (court-circuit) pendant un délai, puis en testant la récupération.
Explication Détaillée
3 états :
- Closed (fermé) : appels normaux, monitoring des échecs.
- Open (ouvert) : tous les appels échouent immédiatement, on laisse le service récupérer.
- Half-Open (semi-ouvert) : on laisse passer quelques requêtes tests pour voir si le service est rétabli.
Pourquoi ? Sans circuit breaker, un service en panne fait s'empiler des requêtes, épuiser les threads, et crasher le service appelant (effet domino).
Cas d'Usage
- Appels à des API externes peu fiables.
- Communication entre microservices.
- Protection des appels coûteux (LLM, base de données).
Outils Liés
- Hystrix (Netflix, historique, plus maintenu).
- Resilience4j (Java moderne).
- Polly (.NET).
- Istio (service mesh avec circuit breaker intégré).