WebMethods AppMesh: Eine geniale Idee

WebMethods AppMesh: Eine geniale Idee

Vor ein paar Jahren haben wir bei der Software AG sogenannte „Tech Interrupts“ eingeführt – Zeit, die unsere Produktingenieure dem kreativen Denken widmen. Im vergangenen Jahr entstanden in diesen kreativen Auszeiten neue fruchtbare Ideen und ein brandneues Konzept namens AppMesh.

Die Idee ist einfach: die Bereitstellung digitaler Produkte in einer Cloud-Umgebung erleichtern. Dies ist jedoch leichter gesagt als getan, da das Zusammenspiel von Anwendungen, APIs und einer Vielzahl von Services, Microservices und Containern in der Cloud koordiniert werden muss. Wenn die neue App also nicht rund läuft, könnte es an irgendeiner anderen Cloud-Komponente liegen. Und wenn Apps versagen, lassen Sie Ihre Kunden im Stich.

Beispielsweise kaufe ich Zugfahrkarten über eine App auf meinem Handy. Dafür werden mehrere Microservices benötigt: einer für die Suche im Fahrplan und weitere für die Sitzplatzreservierung, die Prüfung der Reisebestimmungen, die Preisermittlung und die Bezahlung.

Diese verschiedenen Services können sich unterschiedlich schnell ändern; so stehen einer meist variablen Preisgestaltung eher langfristige Bestimmungen gegenüber. Wenn die Nachfrage an Feiertagen steigt, muss der Microservice das Dreifache oder Vierfache des Datenverkehrs bewältigen. Fällt einer dieser Microservices aus, bekomme ich keine Zugfahrkarte. Ich komme nicht zu meiner Familie nach Hause und bin genervt!

Woher weiß der App-Anbieter nun, welcher der vielen beteiligten Services nicht funktioniert? Dies ist nur eine von vielen neuen Herausforderungen im Zusammenhang mit Cloud-Anwendungen auf der Basis von Microservices. Die Microservices können nur als Einheit funktionieren, wenn sie sich gegenseitig finden – aber Netzwerkadressen können sich in der Cloud ändern. Mit der Sicherheit verhält es sich ebenfalls anders: Das Sicherheitskonzept zentralisierter Tools ist für die Cloud ungeeignet. Und funktioniert Ihre App noch, wenn ein Cloud-Container ausfällt?

Um dieses Problem zu lösen, haben einige Unternehmen ein Service Mesh eingeführt, also eine separate Netzwerkschicht zur Steuerung der Kommunikation zwischen den Services, der Sicherheit und der Fehlertoleranz. Service Meshes lassen sich aber nicht ohne Weiteres einrichten und haben ihre Grenzen. Sie können nicht bieten, was Anwendungsverantwortliche für erfolgreiche Apps brauchen.

Anwendungsverantwortliche müssen ihr Produkt für bestimmte Verbrauchergruppen attraktiv und persönlich gestalten. Sie möchten die Nutzung verfolgen und optimieren. Außerdem benötigen sie eine moderne Zugriffskontrolle und erweiterten Schutz der privaten Nutzerdaten.

Das „Aha“-Erlebnis – AppMesh

Aus diesem Grund hat unser Team den nächsten logischen Schritt getan und AppMesh entwickelt, eine leistungsstarke Steuerungsschicht für cloudnative Geschäftsanwendungen.

Mit AppMesh können Sie Regeln zur Steuerung des App-Verhaltens erstellen, ohne einzelne Microservices zu ändern. Über diese Regeln ist es allein durch Konfiguration (nicht durch Codierung) möglich, eingehende und ausgehende Daten zu modifizieren, Benutzer intelligent an verschiedene Services weiterzuleiten, Antworten zu personalisieren und das Benutzerverhalten zu verfolgen, unbefugten Benutzern den Zugriff zu verweigern und die Sicherheit der Daten zu gewährleisten. Sie können sogar alte Services Ihrer Anwendung durch neue ersetzen, ohne dass Ihre Benutzer dies bemerken.

Mit AppMesh kann der Anbieter meiner Bahn-App beispielsweise feststellen, dass es sich bei dem ausgefallenen Service um die Preisermittlung gehandelt hat. Somit kann er sicherstellen, dass ich dynamisch an einen Backup-Service umgeleitet werde und keinen Anlass zu Beschwerden habe. Ich kann ohne Probleme meinen Zug auswählen, meinen Sitzplatz reservieren und meine Fahrkarte bezahlen.

AppMesh als Schaltzentrale der Microservices ergänzt Anwendungskontext. Dank tiefer Einblicke und der Kontrolle über die Services können Unternehmen das Kundenerlebnis nachvollziehen und verbessern. Die dynamisch austauschbare Mesh-Architektur ist zuverlässig und skalierbar. Zudem werden Geschäftsrisiken durch Sicherheits- und Governance-Richtlinien verringert.

Das Produktteam der Software AG hat erkannt, dass neue API-Management-Lösungen moderne Architekturen für cloudnative Apps unterstützen müssen. Das ist nur einer der Gründe, warum ich so gerne mit diesem Team arbeite.

Teilen:
Strategie und Taktik für die Digitalisierung

Strategie und Taktik für die Digitalisierung

Was haben die Schlacht von Trafalgar und eine erfolgreiche Digitalisierung gemeinsam? Beide nutzen eine innovative Strategie und agile Methoden. So wie Nelson seine Schiffe flexibel einsetzte und damit siegte, können auch Unternehmen ihre bestehende Infrastruktur zu einer zukunftsfähigen IT machen.

Aus historischen Strategien und Taktiken können wir viel für das moderne Geschäft lernen. So gilt die Schlacht von Trafalgar noch heute als strategische Meisterleistung. Mit einer kleineren Flotte und deutlich weniger Feuerkraft gewann Nelson gegen die französisch-spanische Armada. Wie ihm das gelang? Nelson löste sich aus althergebrachten Denkmustern seiner Vorgänger und ersann eine innovative Strategie. Er nutzte seine vorhandene Infrastruktur flexibel, um diese umzusetzen. Voraussetzung hierfür war die Agilität der einzelnen Einheiten (Schiffe), ihrer Komponenten (Geschütze) sowie die Zusammenarbeit der gut ausgebildeten (kompetenten) Mannschaften.

Strategisch denken – agil handeln

Genau diese Methoden wendet auch eine erfolgreiche Digitalisierung an. Während früher große Teams in langen Zyklen an großen Anwendungsblöcken arbeiteten, setzt die Digitalisierung auf kompetente kleine Gruppen, die möglichst kleine unabhängige Funktionsblöcke entwickeln. Dies erlaubt ein flexibles und agiles Vorgehen, was die Voraussetzung für schnelle Innovation ist. Das Ganze erfolgt im Rahmen einer Strategie. Digitalisierung ist ein gemeinsames übergreifendes Ziel, das von allen Mitarbeitern getragen und gelebt wird. Dafür müssen Unternehmen prinzipiell umdenken, wie sie Software entwickeln, ausliefern und betreiben. In einer digitalisierten Firma werden IT-Lösungen dynamisch aus unabhängigen Bausteinen (Microservices, Benutzeroberflächen, APIs etc.) zusammengesetzt. Kleine Einheiten können schneller und flexibler geändert werden, und durch die Modularität lassen sich auch die zusammengesetzten Lösungen schneller und flexibler erstellen oder anpassen.