Na dużą skalę awarie są nieuniknione — serwery się zawisają, sieci ulegają awarii, zależności stają się niedostępne. Projektowanie z myślą o awariach oznacza budowanie systemów, które tolerują i odzyskują się z awarii elegancko zamiast zakładać, że wszystko działa. Jest to niezbędne dla niezawodnych systemów.
Projektowanie z myślą o awariach (mentalność)
ASSUME things WILL fail → at scale, failures are NORMAL, not exceptional:
→ servers crash, networks partition, disks fail, dependencies go down, traffic spikes
→ design systems to EXPECT and HANDLE failures gracefully (not assume everything works)
→ "everything fails all the time" → build resilience in.
