Circuit Breaker Anti-Patterns: Keď Ochrana Spôsobuje Výpadky
Circuit breakery bránia kaskádovým zlyhaniam ale zlá konfigurácia ich zhoršuje. Ukážem 5 anti-patternov: zdieľané breakery, zlé thresholdy, žiadny fallback.
8 článkov
Circuit breakery bránia kaskádovým zlyhaniam ale zlá konfigurácia ich zhoršuje. Ukážem 5 anti-patternov: zdieľané breakery, zlé thresholdy, žiadny fallback.
5 data nodov ale jeden je na 100% CPU. Nerovnomerné routing kľúče vytvárajú hot shardy. Ukážem ako detekovať skew a opraviť ho pomocou routing stratégií.
Frontend sa vzdá po 5s ale backend pracuje ďalších 30s. Bez deadline propagácie mrháte resources na odsúdené requesty. Ukážem ako to implementovať v Go.
100 requestov zasiahne expirovanú cache súčasne. Všetkých 100 sa pýta databázy. Implementujem X-Fetch algoritmus ktorý refreshuje cache pred expiráciou bez zamykania.
Praktická implementácia Outbox patternu v Node.js/TypeScript s PostgreSQL LISTEN/NOTIFY. Race-condition case study a production-ready riešenie.
Nový node sa pripája ku clusteru ale je odmietaný. IP starého nodu je stále v blackliste failure detection gossip protokolu. Zombie membership záznam žije ďalej.
Perfektná idempotency logika, ale zákazníci sú stále účtovaní dvakrát. Príčina: kontrola idempotency keys voči read replice ktorá je sekundy za primary počas špičiek.
Dva nody súčasne veria že držia leader lease. Príčina: malá NTP korekcia hodín dozadu kombinovaná s kódom ktorý mieša wall-clock čas s duration-based timeoutmi.