Jump to section

Was ist Middleware?

URL kopieren

Bei Middleware handelt es sich um Software und Cloud-Services, die weitverbreitete Services und Funktionen für Anwendungen bereitstellen. Sie unterstützen Entwicklungs- und Operations-Teams dabei, Anwendungen effizienter zu entwickeln und einzusetzen. Man kann sich Middleware als das Bindegewebe zwischen Anwendungen, Daten und Nutzenden vorstellen.

Middleware ist seit den späten 1960er Jahren Teil der Terminologie des Software-Engineerings und kann als Kategorie für eine Vielzahl moderner Softwarekomponenten gelten. Middleware kann Anwendungs-Runtimes, die Integration von Unternehmensanwendungen und verschiedene Arten von Cloud-Services umfassen. Datenverwaltung, Anwendungsservices, Messaging, Authentifizierung und API-Management werden üblicherweise von der Middleware gehandhabt.

Middleware ist heute die technologische Grundlage für moderne cloudnative Architekturen. Middleware ermöglicht Organisationen mit Multi-Cloud- oder containerisierten Umgebungen eine kostengünstige Entwicklung und Ausführung von Anwendungen in großem Umfang.

Middleware kann viele Bereiche umfassen, von Webservern über Authentifizierungssysteme bis hin zu Messaging-Tools. Im Folgenden zählen wir einige der häufigsten Use Cases für Middleware in der modernen Entwicklung auf.

Middleware New Application Development diagram

Entwicklung neuer Anwendungen

Middleware ist in der Lage, moderne und beliebte Runtimes für eine Vielfalt an Use Cases zu unterstützen. Entwicklungs- und Architekturteams können agil auf verschiedenen Plattformen arbeiten, und zwar mit verschiedenen Runtimes, Frameworks und Programmiersprachen. Mit Middleware lassen sich dazu häufig verwendete Funktionen wie Webserver, Single Sign-On (SSO), Messaging und In Memory Caching bereitstellen.

Middleware optimization of existing applications diagram

Optimierung bestehender Anwendungen

Mithilfe von Middleware können Entwicklungsteams veraltete monolithische Anwendungen in cloudnative Apps umwandeln und erhalten so nicht nur wertvolle Tools, sondern auch eine bessere Leistungsfähigkeit und Portierbarkeit.

Middleware comprehensive integration diagram

Umfassende Integration

Mit Middleware Integrations-Tools können Sie wichtige interne und externe Systeme verbinden. Integrationsfunktionen wie Transformation, Konnektivität, Kombinierbarkeit, Enterprise Messaging und SSO-Authentifizierung machen es für die Entwicklungsteams einfacher, die Funktionen in den verschiedensten Anwendungen zu nutzen.

Middleware app programming interfaces diagram

APIs (Application Programming Interfaces)

Der Zugriff auf viele Middleware Services erfolgt über APIs, die aus verschiedenen Tools, Definitionen und Protokollen bestehen und über die die Anwendungen miteinander kommunizieren können. APIs ermöglichen die Verbindung völlig unterschiedlicher Produkte und Services über eine gemeinsame Schicht.

Middleware data streaming diagram

Daten-Streaming

Eine weitere Möglichkeit der gemeinsamen Datennutzung durch Anwendungen ist neben APIs das asynchrone Daten-Streaming. Hier werden Datensätze in einem Zwischenspeicher repliziert, wo mehrere Anwendungen auf sie zugreifen können. Ein beliebtes Middleware Tool auf Open Source-Basis für das Daten-Streaming in Echtzeit ist Apache Kafka.

Middleware intelligent business automation diagram

Intelligente Geschäftsautomatisierung

Mithilfe von Middleware können Entwicklungs- und Architekturteams, die IT und die Geschäftsführung manuelle Entscheidungen automatisieren. Dadurch wiederum lassen sich Ressourcenmanagement und Effizienz verbessern.

Da Unternehmen immer mehr zur cloudnativen Entwicklung tendieren, mussten sich Beschäftigte im Bereich der Softwareentwicklung und Systemarchitektur im Vorfeld auf das Design und die Architektur ihrer Anwendungsplattformen konzentrieren. Dies erfordert die Auswahl und Einrichtung von Frameworks und Funktionen zum Entwickeln, Bereitstellen und Ausführen von Anwendungen – Funktionen, die von Middleware verwaltet werden. Mit diesen Funktionen kann ein Unternehmen mehr Vorteile aus der Cloud ziehen. Anwendungen lassen sich in mehreren Infrastrukturen bereitstellen, von On-Premise-Systemen bis hin zu Public Clouds, und funktionieren weiterhin wie vorgesehen.

Unternehmen nutzen vermehrt Middleware, um diese komplexen Systeme zu verwalten und Anwendungen schnell und kostengünstig entwickeln zu können. Dabei wird ein Großteil der Middleware jetzt als Cloud-Services angeboten, was die Bereitstellung und Verwaltung vereinfacht. Middleware bietet Unterstützung für Anwendungsumgebungen, die reibungslos und konsistent auf einer hochverteilten Plattform ausgeführt werden. Sie kann auch die Sicherheit der Softwarelieferkette, DevSecOps-Strategien und Automatisierung unterstützen und Teams dabei helfen, neue und bessere Anwendungen schneller zu entwickeln und gleichzeitig Sicherheitsrisiken zu verwalten.

Warum Red Hat bei Middleware einsetzen?

Moderne Geschäftsanwendungen werden so entwickelt, dass sie in großem Umfang, lokal und in Clouds ausgeführt werden können. Dazu aber benötigen Entwicklungsteams eine Anwendungsumgebung mit einheitlichen Basisfunktionen. Und der Schlüssel zu einer solchen Umgebung ist Middleware.

Man kann sich die oben genannten Funktionen als vier Schichten (plus Tools) vorstellen:

Die Container-Schicht

Diese Schicht der Middleware sorgt für eine einheitliche Bereitstellung der Anwendungs-Lifecycles. Sie liefert außerdem DevOps mit CI/CD, Container-Management und Service Mesh-Funktionen.

Die Runtimes-Schicht

Diese Schicht enthält die Ausführungsumgebungen für benutzerdefinierten Code. Middleware liefert schlanke Runtimes und Frameworks für hochverteilte Cloud-Umgebungen wie Microservices, dazu In-Memory Caching für einen schnellen Datenzugriff und Messaging für eine beschleunigte Datenübertragung.

Die Integrationsschicht

Integrative Middleware liefert Services, um benutzerdefinierte und gekaufte Anwendungen sowie SaaS-Assets (Software-as-a-Service) per Messaging, Integration und APIs zu verbinden, damit diese funktionierende Systeme bilden. Sie kann auch In-Memory-Datenbank- und Daten-Cache-Services, Daten-/Event-Streaming und API-Management bereitstellen.

Die Prozessautomatisierungs- und Entscheidungsmanagementschicht

Diese finale Schicht der Entwicklungs-Middleware bietet intelligente Funktionen, Optimierungs-, Automatisierungs- und Entscheidungsmanagement.

Tooling

Neben diesen vier Middleware-Schichten gibt es noch die Tools der Anwendungsentwicklung. Damit können die Teams ihre Anwendungen mithilfe von vordefinierten Templates und Containern entwickeln, Code effizienter teilen und noch besser gemeinsam arbeiten. Außerdem sorgen die Tools für eine einheitliche und kohärente Entwicklungsumgebung und Anwendungsbereitstellung, ob lokal oder in der Cloud.

E-Book: Das 1x1 der Anwendungsentwicklung und -bereitstellung

APIs erstellen eine Reihe von Definitionen und Protokollen für die Integration von Software, sodass eine Anwendung mit anderen Produkten und Services kommunizieren kann. Da APIs die Integration neuer Anwendungskomponenten in eine bestehende Architektur erleichtern, unterstützen sie automatisch die Zusammenarbeit von Teams und das Hinzufügen nützlicher neuer Funktionen zur Software.

Die Verwendung von APIs und Microservices ist ein grundlegender Bestandteil der cloudnativen Anwendungsentwicklung. Services zur Erleichterung der API-Konnektivität sind eine Art Middleware. API-Managementtools ermöglichen das Teilen, Verteilen, Steuern und Monetarisieren von APIs.

In Verbindung mit anderen Tools für Anwendungsservices, wie Service Mesh und Daten-Streaming, ermöglicht API-Management das Ausführen von Anwendungen in großem Umfang in einer Hybrid Cloud-Umgebung.

Das API-Benutzerhandbuch: 7 Best Practices erfolgreicher API-Teams

Weiterlesen

Artikel

Was ist Integration?

Sie möchten wissen, was Integration ist? Erfahren Sie alles über Integration, wie man sie einsetzt und warum sie in Verbindung mit Open Source noch viel wertvoller ist.

Artikel

Was ist Apache Kafka?

Apache Kafka ist eine verteilte Data-Streaming-Plattform, mit der Sie Daten in Echtzeit veröffentlichen, abonnieren, speichern und verarbeiten können.

Artikel

Was ist eine API?

APIs (Application Programming Interfaces) bestehen aus mehreren Definitionen und Protokollen zur Entwicklung und Integration von Anwendungssoftware.

Mehr über Integration erfahren

Produkte

Red Hat® Integration umfasst diverse Integrations- und Messaging-Technologien für die Daten- und Anwendungsintegration in Hybrid Cloud-Umgebungen. Es enthält Red Hat 3scale API Management, Red Hat AMQ, Red Hat Runtimes, Erfassung von Änderungsdaten und Service-Registry. 

Red Hat Runtimes umfasst eine Reihe von Produkten, Tools und Komponenten, mit denen cloudnative Anwendungen entwickelt und gewartet werden können. Es enthält Red Hat AMQ, Red Hat Data Grid, Red Hat JBoss® Enterprise Application Platform, Red Hat JBoss Web Server, Red Hat build of OpenJDK, Red Hat build of Quarkus, Cloudnative Runtimes, Red Hat Migration Toolkit für Anwendungen, Single Sign-On (SSO) und Launcher-Service.

Red Hat Application Foundations umfasst zahlreiche Integrations- und Runtimes Technologien, um die Entwicklung, Bereitstellung und Nutzung von Anwendungen sicher und in großem Umfang in der Hybrid Cloud zu unterstützen.

Gehostete und gemanagte Plattform-, Anwendungs- und Datenservices, die das Hybrid Cloud-Erlebnis optimieren und die Betriebskosten sowie die Komplexität der Bereitstellung cloudnativer Anwendungen verringern.

Ressourcen

E-Book

Agile Integration: Ein Blueprint für die Unternehmensarchitektur

Training

Kostenloser Trainingskurs

Red Hat Agile Integration Technical Overview