Entwerfen von datenintensiven Anwendungen (German Edition), 2nd Edition
by Martin Kleppmann, Chris Riccomini
Kapitel 9. Die Probleme mit verteilten Systemen
Diese Arbeit wurde mithilfe von KI übersetzt. Wir freuen uns über dein Feedback und deine Kommentare: translation-feedback@oreilly.com
Unfälle sind schon komisch. Man hat sie nie, bis man sie hat.
A.A. Milne, The House at Pooh Corner (1928)
Wie in „Zuverlässigkeit und Fehlertoleranz” besprochen, heißt ein System zuverlässig zu machen, dass das System als Ganzes weiterläuft, auch wenn mal was schiefgeht (also wenn es einen Fehler gibt). Es ist aber nicht so einfach, alle möglichen Fehler vorherzusehen und zu beheben. Als Entwickler ist es sehr verlockend, sich hauptsächlich auf den Happy Path zu konzentrieren (schließlich läuft meistens alles gut!) und Fehler zu vernachlässigen, da sie viele Randfälle mit sich bringen.
Wenn du möchtest, dass dein System auch bei Fehlern zuverlässig ist, musst du deine Denkweise komplett ändern und dich auf das konzentrieren, was schiefgehen könnte, auch wenn es unwahrscheinlich ist. Es ist egal, ob die Wahrscheinlichkeit nur eins zu einer Million ist; in einem ausreichend großen System passieren solche Ereignisse jeden Tag. Erfahrene Systembetreiber werden dir sagen, dass alles, was schiefgehen kann, auch schiefgehen wird.
Die Arbeit mit verteilten Systemen unterscheidet sich auch grundlegend vom Schreiben von Software auf einem einzigen Computer – der Hauptunterschied besteht darin, dass Dinge auf viele neue und spannende Arten schiefgehen können 1, 2]. In diesem Kapitel bekommst du einen Eindruck ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access