Middleware

Middleware

Middleware (deutsch „Diensteschicht“ oder „Zwischenanwendung“) bezeichnet in der Informatik anwendungsneutrale Programme, die so zwischen Anwendungen vermitteln, dass die Komplexität dieser Applikationen und ihre Infrastruktur verborgen wird.[1] Man kann Middleware auch als eine Verteilungsplattform, d. h. als ein Protokoll (oder Protokollbündel) auf einer höheren Schicht als die 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.

Inhaltsverzeichnis

Funktionsweise und Einsatz

Aufbau: Middleware

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, Java 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

Quellen

  1. nach: W. Ruh u. a.: Enterprise Application Integration. Wiley, 2001.

Siehe auch

Weblinks


Wikimedia Foundation.

Игры ⚽ Поможем решить контрольную работу

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Middleware — es un software que asiste a una aplicación para interactuar o comunicarse con otras aplicaciones, software, redes, hardware y/o sistemas operativos. Éste simplifica el trabajo de los programadores en la compleja tarea de generar las conexiones… …   Wikipedia Español

  • Middleware — Middleware,   Software für den objektorientierten, direkten Datenaustausch zwischen Anwendungsprogrammen, die unter verschiedenen Betriebssystemen oder in heterogenen Netzen arbeiten. Beispiele für Middleware Standards sind Corba, Java RMI oder… …   Universal-Lexikon

  • middleware — The generic term for those software technologies that sit somewhere between operating systems (like Windows) and applications programs (like word processors or web browsers), and that allow the seamless sharing of data, applications and other… …   Law dictionary

  • Middleware — This article is about integration software. For video game engine software, see Game engine#Game middleware. Middleware is computer software that connects software components or people and their applications. The software consists of a set of… …   Wikipedia

  • Middleware — En architecture informatique, un middleware (anglicisme) est un logiciel tiers qui crée un réseau d échange d informations entre différentes applications informatiques. Le réseau est mis en œuvre par l utilisation d une même technique d échange d …   Wikipédia en Français

  • middleware —    A category of software that shields an application from the underlying mechanics of a network so that the developers of an application do not have to know in advance which network and communications protocols will be used. Middleware is often… …   Dictionary of networking

  • middleware — tarpinė programinė įranga statusas T sritis informatika apibrėžtis Programinė įranga, atliekanti tarpininko vaidmenį keičiantis duomenimis tarp skirtingų programų, sistemų, platformų, kai tiesioginis keitimasis tarp jų neįmanomas arba nėra… …   Enciklopedinis kompiuterijos žodynas

  • Middleware analyst — Middleware analysts are computer software engineers with a specialization in products that connect two different computer systems together. These products can be open source or proprietary. As the term implies, the software, tools, and… …   Wikipedia

  • Middleware-Software-System für Betreiber-Funktionssteuerung — Middleware Software Systeme für Betreiber Funktionssteuerung sind Middleware Systeme im Bereich des Fernseh und Rundfunks, welche die Steuerung der Signalübertragung von Massenmedien (vorwiegend Fernsehen und Radio) über das Übertragungsnetz des… …   Deutsch Wikipedia

  • Middleware RFID — El Middleware RFID es una forma diferente de enfocar el clásico middleware conocido en el entorno informático. Así, debido al reciente desarrollo exponencial de la tecnología RFID, las funciones del Middleware RFID no se ajustan a las clásicas… …   Wikipedia Español

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”