Kapitel 8. Verlässlichkeit
Diese Arbeit wurde mithilfe von KI übersetzt. Wir freuen uns über dein Feedback und deine Kommentare: translation-feedback@oreilly.com
Alles schlägt fehl, die ganze Zeit.
Werner Vogels, CTO von Amazon Web Services
Bei Softwaresystemen kann immer etwas schief gehen. Vielleicht füllt sich ein Datenbankverbindungspool, vielleicht gibt es unerwartete Latenzzeiten aufgrund von Netzwerkproblemen oder vielleicht gibt es ein schlechtes Deployment und ein Dienst antwortet mit 500s. Die Wahrscheinlichkeit eines Ausfalls ist in Microservices-Infrastrukturen sogar noch höher, weil eine einzige Anfrage mehrere Dienste betreffen kann. Zum Beispiel kann jeder Dienst eine Betriebszeit von 99,9 % haben, aber wenn fünf Dienste an einer Anfrage beteiligt sind, beträgt die Betriebszeit insgesamt nur 99,5 %.1 Das scheint kein großer Unterschied zu sein, aber es bedeutet einen Anstieg von 8 auf 43 Stunden Ausfallzeit pro Jahr!
Es ist einfach nicht möglich, Ausfälle in allen deinen Systemen zu verhindern. Es sind zu viele Komponenten beteiligt, die Komplexität ist zu hoch und es gibt nur so viel, wie du in die Zuverlässigkeit investieren kannst, ohne Zeit von benutzerorientierten Funktionen und anderen Geschäftsanforderungen abzuziehen. Da Ausfälle unvermeidlich sind, ist es das Beste, wenn du deine Systeme so entwickelst, dass sie Ausfälle gut verkraften. Das bedeutet, dass du die Auswirkungen eines Ausfalls so weit wie möglich reduzieren musst.
Consul kann über seine Sidecar-Proxys ...
Get Consul: Auf und davon 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.