Hysterix
- Hysterix Quelle
-
latenz- und Fehlertolaranz-Bibiothek für Fehlerisolationscode zum Zugraiff auf remote Systeme.
Es stoppt Fehlerkaskaden und ermöglicht die beruhigung in komplexen verteilten Syszemen, wo Fehler unvermeidlich auftreten.
- Absicherung gegenüber externen Diensten mit Hystrix
-
Das verwenden fremder Dienste in die eigene Anwendung erzeugt Rückwirkungen zur Laufzeit bei Nicht-Erreichbarkeit, Performancemängeln.
Die Hysterix-Bibiothek kapeslt die Aufrufe fremder Dienste und bietet eine Eiheitliche Überwachungsm&ouuml;glichkeit.
Die Konfiguration wird auch zentral gemacht.
- Introducing Hystrix for Resilience Engineering
- Hystrix - damit Ihnen rechtzeitig die Sicherung durchbrennt
-
Grundsätze bei der Programmierung von verteilten Systemen:
- Timeout: keine 100% zuverlässigkeit
- Sicherungen (Circuit Breaker): Bei Überlastungen sollte die Verbindung zu einem System eingestellt werden
- Bulkheads (Unterteilen in Sicherheitsbereiche): Auswirkungen von Fehleren sollen lokal begrenzt werden
- Steady State: Nachhaltiger umgenag mit Resourcen, dass das system immer stabil bleibt
- Fail Fast: Anfragen, die nicht erfolgreich bearbeitet werden können, sollen sch schnell wie möglich vom Server unterbrochen und mit einer aussagekräftigen Fehlerbeschreibung beantortet werden. → schont Resourcen eigener und abhängiger Komponenten.
- Handshaking: Ein Client sollte vorher nachfragen, ob der Server die Resourcen für eine Fülle von Aufträgen hat.
- Test harness: Die Eigene Anwendung soll mit Tests auf alle Situationen vorbereitet werden,
- Entkopplungsmiddleware: Messaging-Systeme können Systeme entkoppeln, und persistente Messinging-Ablagen können einen zwischenzeitlichen Ausfall kopensieren.
Metriken aus dem laufenden Betrieb sollen für die Parameter wie Timeout verwendet werden.