Middleware - LinkFang.de





Middleware


Middleware (englisch für Diensteschicht oder Zwischenanwendung) bezeichnet in der Informatik anwendungsneutrale Programme, die so zwischen Anwendungen vermitteln, dass die Komplexität dieser Applikationen und ihre Infrastruktur verborgen werden.[1] Man kann Middleware auch als eine Verteilungsplattform, d. h. als ein Protokoll (oder Protokollbündel) auf einer höheren Schicht als jener der gewöhnlichen Rechnerkommunikation auffassen. Im Gegensatz zu niveautieferen Netzwerkdiensten, welche die einfache Kommunikation zwischen Rechnern handhaben, unterstützt Middleware die Kommunikation zwischen Prozessen.

Im Bereich der Computerspieleentwicklung werden hingegen Subsysteme für Teilbereiche wie etwa die Spielphysik als Middleware bezeichnet. Diese Middleware wird oft von Fremdentwicklern hergestellt und angeboten.

Funktionsweise und Einsatz

Middleware stellt eine Ebene in einem komplexen Softwaresystem dar, die als „Dienstleister“ anderen ansonsten entkoppelten Softwarekomponenten den Datenaustausch ermöglicht. Meist erfolgt diese Kommunikation mit Hilfe eines Netzwerkes, das durch die Middleware für die sie benutzenden Softwarekomponenten transparent gemacht wird. Middleware arbeitet dabei auf einem hohen Niveau innerhalb des Schichtenmodells: Ihre Aufgabe ist also nicht die Low-Level-Kommunikation für einzelne Bytes (wie sie beispielsweise schon ein Betriebssystem bereitstellt). Middleware organisiert den Transport komplexer Daten (sog. messaging), vermittelt Funktionsaufrufe zwischen den Komponenten (sog. Remote Procedure Calls), stellt die Transaktionssicherheit über ansonsten unabhängige Teilsysteme her (Funktion als Transaktions-Monitor) etc.

Middleware-Software ist als Standardsoftware von mehreren Herstellern verfügbar. Technisch stellt sie Software-Schnittstellen oder Dienste bereit. Eine Softwarekomponente A, die die Middleware-Schicht benutzen möchte, um mit einer Softwarekomponente B zu kommunizieren, kann diese Schnittstellen benutzen. Die entsprechenden Aufrufe werden von der Middleware-Softwarekomponente über ein Netzwerk weitergereicht. Dabei werden in der Regel gebräuchliche Netzwerk-Standardprotokolle – fast immer IP und TCP, darauf aufbauend meist HTTP, darauf aufbauend u. a. SOAP oder Web Services – verwendet. Auf der Empfängerseite setzt die Middleware die Anforderung in einen Funktionsaufruf an die Software B um. Gegebenenfalls leitet sie die „Antwort“ der Komponente B an Komponente A auf demselben Weg zurück.

Als Nachteil von Middleware kann ihre Größe und Schwerfälligkeit genannt werden. Eine Optimierung der Leistungsfähigkeit dieser Programme ist durch den Programmierer nur selten möglich.

Middleware-Kategorien

Eine grobe Unterteilung zum besseren Verständnis:

Anwendungsorientierte Middleware
Im Mittelpunkt steht neben der Kommunikation vor allem die Unterstützung verteilter Anwendungen. Beispiele sind sowohl allgemeine Architekturen, wie CORBA, JEE oder .NET, als auch komplette Betriebssysteme, wie z. B.
  • MHP (Multimedia Home Platform), Java-basiertes System für das interaktive Fernsehen.
  • MIDP (Mobile Information Device Profile), Java-basiertes System für Mobiltelefone,
Kommunikationsorientierte Middleware
Hierbei liegt der Schwerpunkt in der Abstraktion von der Netzwerkprogrammierung. Beispiele sind RPC, RMI, Web Service
Nachrichtenorientierte Middleware
Nachrichtenorientierte Middleware arbeitet nicht mit Methoden- oder Funktionsaufrufen, sondern über den Austausch von Nachrichten (messages). Das Nachrichtenformat gibt die eingesetzte Middleware vor. Eine Nachrichtenorientierte Middleware kann sowohl synchron als auch asynchron arbeiten. Bei einer asynchronen Variante wird eine Warteschlange verwendet, in die der message-Produzent seine Nachrichten stellt. Ein Konsument kann die Nachrichten dann konsumieren. Vorteile sind u.a. die vollständige Entkopplung von Nachrichtensender und -empfänger und dass Anwendungen auch weiterarbeiten können, wenn Teilkomponenten ausgefallen sind. Eine Architektur für Nachrichtenorientierte Middleware gibt z. B. JMS vor.

Typische Middlewareprodukte

Siehe auch

Weblinks

Einzelnachweise

  1. nach: W. Ruh u. a.: Enterprise Application Integration. Wiley, 2001.
  2. xmlBlaster (englisch) – offizielle Startseite; Stand: 5. Dezember 2011

Kategorien: Middleware

Quelle: Wikipedia - http://de.wikipedia.org/wiki/Middleware (Vollständige Liste der Autoren des Textes [Versionsgeschichte])    Lizenz: CC-by-sa-3.0

Änderungen: Alle Bilder mit den meisten Bildunterschriften wurden entfernt. Ebenso alle zu nicht-existierenden Artikeln/Kategorien gehenden internen Wikipedia-Links (Bsp. Portal-Links, Redlinks, Bearbeiten-Links). Entfernung von Navigationsframes, Geo & Normdaten, Mediadateien, gesprochene Versionen, z.T. ID&Class-Namen, Style von Div-Containern, Metadaten, Vorlagen, wie lesenwerte Artikel. Ansonsten sind keine Inhaltsänderungen vorgenommen worden. Weiterhin kann es durch die maschinelle Bearbeitung des Inhalts zu Fehlern gerade in der Darstellung kommen. Darum würden wir jeden Besucher unserer Seite darum bitten uns diese Fehler über den Support mittels einer Nachricht mit Link zu melden. Vielen Dank!

Stand der Informationen: August 201& - Wichtiger Hinweis: Da die Inhalte maschinell von Wikipedia übernommen wurden, ist eine manuelle Überprüfung nicht möglich. Somit garantiert LinkFang.de nicht die Richtigkeit und Aktualität der übernommenen Inhalte. Sollten die Informationen mittlerweile fehlerhaft sein, bitten wir Sie darum uns per Support oder E-Mail zu kontaktieren. Wir werden uns dann innerhalb von spätestens 10 Tagen um Ihr Anliegen kümmern. Auch ohne Anliegen erfolgt mindestens alle drei Monate ein Update der gesamten Inhalte.