Komplexität von Mikroservices: Die versteckten Kosten der Aufteilung

Von Rocket Software

5 Minuten Lesezeit

Zusammenfassung

Ein Kunde schließt einen Online-Kauf ab. Seine Karte wird belastet, aber die Bestellung wird nie versandt.

Ein Reisender bucht einen Flug. Die Zahlung wird durchgeführt, aber sein Sitzplatz wurde nie reserviert.

Das System ist in beiden Fällen nicht abgestürzt. Teile des Arbeitsablaufs funktionierten, doch aus betriebswirtschaftlicher Sicht ist das Ergebnis dennoch ein Misserfolg. In vielen Branchen birgt ein Teilerfolg ein höheres Risiko als ein vollständiger Ausfall.

 

Wo bergen Microservices Risiken?

Dieses Ergebnis kann bei Modernisierungsinitiativen auftreten, wenn Geschäftsprozesse, die ehemals innerhalb einer einzigen Transaktionsschnittstelle ausgeführt wurden, auf mehrere Dienste oder Plattformen verteilt werden. Zwar kann die Dekomposition Agilität und Skalierbarkeit verbessern, jedoch die Transaktionskoordination und -konsistenz erschweren, wenn ein einzelner Geschäftsprozess viele Komponenten umfasst.

Diese Flexibilität hat ihren Preis. Wenn eine einzelne Geschäftstransaktion mehrere Dienste mit jeweils eigenen Daten und Logiken umfasst, wird es deutlich schwieriger, einen reibungslosen Ablauf zu gewährleisten. Ein vollständiger Ausfall ist sofort erkennbar und erfordert eine Reaktion. Ein Teilausfall (bei dem einige Schritte erfolgreich sind, andere jedoch nicht) kann länger unbemerkt bleiben und finanzielle Risiken, Kundenunzufriedenheit und operative Komplexität verursachen, insbesondere in Umgebungen, in denen geschäftskritische Transaktionen von einer konsistenten, durchgängigen Ausführung abhängen.

 

Warum zeichnen sich Mainframes auch bei der Modernisierung durch hervorragende Transaktionsintegrität aus?

In vielen Branchen ist Teilerfolg nicht akzeptabel. Das Prinzip der Transaktionsintegrität besagt, dass jede Operation entweder erfolgreich abgeschlossen oder vollständig rückgängig gemacht wird. Im Finanzdienstleistungssektor kann sich eine Bank eine Saldenaktualisierung ohne entsprechenden Buchungssatz nicht leisten, genauso wenig wie ein Versicherer eine Police ohne abgeschlossene Risikoprüfung ausstellen oder ein Reisesystem eine Zahlung ohne gesicherte Reservierung bestätigen kann.

Historisch gesehen basierten Systeme, die solche Arbeitslasten bewältigen, auf einem einfachen Prinzip: Eine Transaktion wird entweder vollständig abgeschlossen oder sie findet gar nicht statt.

Monzo, eine britische Digitalbank, hat öffentlich über die operativen Herausforderungen gesprochen, die mit dem Wachstum ihrer IT-Umgebung auf über 1.500 Microservices einhergingen. Das Unternehmen begegnete diesen Herausforderungen durch verbesserte technische Kontrollen, Transparenz, Testverfahren und operative Disziplin. Ihre Erfahrung zeigt, dass Organisationen mit zunehmend verteilten Systemen verstärkt in die Aufrechterhaltung von Konsistenz und Koordination investieren müssen.

 

Was hat sich mit der modernen Architektur verändert?

Viele Organisationen betreiben heute erfolgreich groß angelegte verteilte Systeme. Moderne Architekturen können zwar starke Transaktionsgarantien bieten, doch erfordern diese Garantien oft zusätzliche Tools und Entwicklungsarbeit, die in der Vergangenheit von der Plattform selbst bereitgestellt wurden.

In risikoreichen Umgebungen mit hohem Transaktionsvolumen richtet ein Teilerfolg mehr Schaden an als ein sichtbarer Fehler. Ein sauberer Rollback gewährleistet die Systemkonsistenz, indem er die Fehlererkennung erleichtert und den Bedienern einen klaren Weg zur Wiederherstellung aufzeigt.

Was in Diskussionen über die Modernisierung von Mainframe-Systemen oft übersehen wird, ist der Ursprung dieser Garantie. Mainframe-Systeme gewährleisteten Atomarität auf Plattformebene und bildeten so die Grundlage für Zuverlässigkeit und Ausfallsicherheit, da Datenkonsistenz und Transaktionsintegrität untrennbar miteinander verbunden sind. Entwickler mussten die Konsistenz nicht über verschiedene Komponenten hinweg orchestrieren, da sie in die Transaktionsausführung integriert war.

Viele moderne Architekturen benötigen weiterhin dieselben Garantien, doch die Verantwortung hat sich verlagert. Anstatt vom System selbst gewährleistet zu werden, wird die Transaktionsintegrität häufig in der Anwendungslogik neu implementiert und über verschiedene Dienste und Koordinationsschichten verteilt. Diese Verlagerung führt zu neuen Fehlermodi, mit denen viele Unternehmen bei der Modernisierung ihrer Mainframes konfrontiert werden, da Transaktionsgarantien nicht mehr auf Plattformebene durchgesetzt werden.

 

Wie können Unternehmen die Modernisierung ihrer Mainframe-Systeme erreichen, ohne die Transaktionsintegrität zu verlieren?

Die Modernisierung von Mainframes erfordert eine klare Abwägung der Verantwortlichkeiten für die Transaktionskoordination. Während einige Organisationen diese Garantien durch verteilte Anwendungsmuster wiederherstellen, besteht ein anderer Ansatz darin, bewährte Transaktionsausführungsmodelle beizubehalten und gleichzeitig die Umgebung zu modernisieren.

Rocket Enterprise Server ermöglicht es Unternehmen, COBOL und andere geschäftskritische Workloads auf verteilten Plattformen und Cloud-Infrastrukturen auszuführen und gleichzeitig die Transaktionsfunktionen beizubehalten, auf die viele Unternehmen seit Jahrzehnten angewiesen sind.

Für Workloads, die auf strikter Transaktionskonsistenz basieren, erhält Rocket Enterprise Server die plattformgesteuerte Transaktionskoordination und ermöglicht gleichzeitig die Bereitstellung auf moderner Infrastruktur. Dadurch können Unternehmen ihre Systeme modernisieren, ohne dass jede Transaktionsgarantie im Anwendungscode und in den Serviceinteraktionen neu implementiert werden muss.

Im vorherigen Beispiel resultierten die Fehler aus einer fragmentierten Steuerung. Durch die Wahrung der Transaktionsintegrität auf der Ausführungsschicht wird das Auftreten solcher Fehler von vornherein deutlich unwahrscheinlicher. Mit der Weiterentwicklung moderner Systeme ist es wichtig sicherzustellen, dass moderne Architekturen die Garantien, die sie ursprünglich zuverlässig gemacht haben, nicht verlieren.

 

Moderne Architektur neu denken

Jahrelang drängten Modernisierungsbemühungen Teams dazu, Anwendungen im Namen von Geschwindigkeit und Skalierbarkeit in kleinere, unabhängige Dienste aufzuteilen. Diese Umstellung brachte zwar echte Vorteile, führte aber auch zu neuen Herausforderungen, mit denen viele Unternehmen noch immer zu kämpfen haben. In der Praxis gehen viele Unternehmen daher selektiver vor, wo und wie sie Anwendungen aufteilen. Manche Workloads profitieren von hochgradig verteilten Architekturen, während andere Wert auf Transaktionskonsistenz und vereinfachte Abläufe legen.

Ziel der Mainframe-Modernisierung ist es, Systeme so weiterzuentwickeln, dass das, was bereits funktioniert, erhalten bleibt, insbesondere die Transaktionsintegrität und -zuverlässigkeit, die die Grundlage der Mainframe-Sicherheit bilden und die viele moderne Systeme immer noch nur schwer nachbilden können.

Erfahren Sie, wie Rocket Enterprise Server Unternehmen dabei unterstützt, geschäftskritische Anwendungen zu modernisieren und gleichzeitig die Transaktionskonsistenz in verteilten und Cloud-basierten Umgebungen zu gewährleisten.

Häufig gestellte Fragen

Ähnliche Beiträge

Security & Compliance

Bereit für die elektronische Rechnungsstellung: Fristen, Anforderungen und praktische nächste Schritte

1 Minute Lesezeit
Bereit für die elektronische Rechnungsstellung: Fristen, Anforderungen und praktische nächste Schritte
Künstliche Intelligenz (KI)

Wir stellen Rocket EVA 2.0 vor.

6 Minuten Lesezeit
Rocket EVA 2.0 führt gesteuerte KI-Agenten für Mainframe- und Hybrid-IT-Systeme ein und unterstützt Teams dabei, Untersuchungen zu beschleunigen, Fachwissen zu erweitern und [...] anzuwenden.
Data

Neuerungen in Vertica 26.3

Mahima Kakkar
5 Minuten Lesezeit
Die neuesten Innovationen der Vertica-Analyseplattform, neue Funktionen, Leistungsverbesserungen und optimierte Benutzerfreundlichkeit, die Unternehmen dabei helfen, ihr Spektrum zu erweitern [...]