Kapitel 9. Einfachheit
Diese Arbeit wurde mithilfe von KI übersetzt. Wir freuen uns über dein Feedback und deine Kommentare: translation-feedback@oreilly.com
Der Preis für Zuverlässigkeit ist das Streben nach größtmöglicher Einfachheit.
C.A.R. Hoare, Vortrag zum Turing-Preis
Softwaresysteme sind von Natur aus dynamisch und instabil.1 Ein Softwaresystem kann nur dann vollkommen stabil sein, wenn es in einem Vakuum existiert. Wenn wir die Codebasis nicht mehr ändern, führen wir auch keine Fehler mehr ein. Wenn sich die zugrundeliegende Hardware oder die Bibliotheken nie ändern, wird keine dieser Komponenten Fehler verursachen. Wenn wir die aktuelle Nutzerbasis einfrieren, müssen wir das System nie skalieren. Eine gute Zusammenfassung des SRE-Ansatzes zur Verwaltung von Systemen lautet: "Am Ende des Tages ist es unsere Aufgabe, Agilität und Stabilität im System im Gleichgewicht zu halten."2
Systemstabilität versus Agilität
Manchmal ist es sinnvoll, Stabilität zugunsten von Flexibilität zu opfern. Ich habe mich einer unbekannten Problemdomäne oft genähert, indem ich so genanntes exploratives Coding durchgeführt habe. Dabei habe ich eine explizite Haltbarkeitsdauer für den Code festgelegt, den ich schreibe, in dem Wissen, dass ich es einmal versuchen und fehlschlagen muss, um die Aufgabe, die ich erfüllen muss, wirklich zu verstehen. Code, der mit einem Verfallsdatum versehen ist, kann viel großzügiger mit der Testabdeckung ...
Get Site Reliability Engineering now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.