Middleware ist der Klebstoff, der verschiedene Anwendungen in der IT-Landschaft zusammenhält. Da immer mehr Anwendungen in die Cloud verlagert werden, stellt sich die Frage: Brauchen Cloud-native Unternehmen Middleware oder ist sie überflüssig?
Die Versprechungen von Cloud-nativen Anwendungen sind, dass sie wie Legosteine sind, die man nach Belieben zusammensetzen kann. Mit Hilfe von APIs sollen verschiedene Anwendungen nahtlos zusammenarbeiten können. Und eine neue Generation von Cloud-basierter Middleware und IPaaS-Lösungen ermöglicht es, die APIs einfach miteinander zu verknüpfen.
Aber ist der Einsatz komplexer Middleware notwendig, um die Interaktion in der Cloud und zwischen Cloud- und On-Premise-Systemen zu ermöglichen? Oder bedeutet das nur zusätzliche Komplexität?
Ich denke, dass eine geeignete Architektur die Systemlandschaft in ein Portfolio von Komponenten umwandeln kann, die ihre eigenen Integrationsfunktionen bereitstellen (anstatt nur Anwendungen mit fixen APIs). In der Vergangenheit war Unternehmensarchitektur ein Thema für den Elfenbeinturm. Mit Konzepten wie ‚Dumb Pipes, Smart Endpoints‘ ist es jedoch möglich, die IT-Landschaft in Komponenten zu zerlegen, die mit Schnittstellen und Datenmappings ausgestattet sind. Dies ermöglicht es, Änderungen vorab über die Architektur zu bewerten und zu planen, anstatt Anwendungen über die Middleware austauschbar zu halten.
Dies bedeutet, dass die Komponenten Endpunkte mit APIs bereitstellen, wodurch die Middleware in einer Cloud-Umgebung eher als ‚dumme Leitung‘ fungieren kann, die lediglich für die Übertragung von Daten zwischen den Endpunkten verantwortlich ist. Die Verarbeitung und Abbildung der Daten erfolgt in den Endpunkten selbst. Dieses Konzept reduziert die Komplexität der Middleware in einer Cloud-Umgebung und verringert die Abhängigkeit von der verwendeten Middleware-Lösung. Das war natürlich schon immer möglich, dadurch das fast alle Cloud-Anwendungen APIs bereitstellen, ist eine solche Architektur jetzt viel einfacher umzusetz