Broker

Broker ist ein Architekturmuster und dient zur Strukturierung verteilter Softwaresysteme mit entkoppelten, entfernten Komponenten. Ein Architekturmuster beschreibt die grundsätzliche Struktur und Organisation einer Anwendung auf der höchsten Abstraktionsebene. Die Broker-Architektur war das grundlegende Muster für die Entwicklung von CORBA (Common Object Request Broker Architecture). Eine Abwandlung ist in den Enterprise JavaBeans (EJB) der J2EE-Plattform sowie der .NET-Plattform zu finden. Auch die Java Remote Method Invocation (RMI) beinhaltet Grundprinzipien des Broker-Musters. Ebenso sind Registry- und Naming-Service Teile des Brokers. Stub- sowie Skeleton-Klassen werden als die Client- und Server-Proxys generiert.


Ein Architekturmuster beschreibt die Menge vordefinierter Subsysteme, spezifiziert deren Zuständigkeit und enthält Regeln zur Organisation der Beziehungen zwischen den Subsystemen. Dabei sind Architekturmuster prinzipiell neutral hinsichtlich einer spezifischen Sprache sowie unabhängig von einer Plattform. Konkrete Ausprägungen sind an ein bestimmtes Betriebssystem oder eine Programmiersprache wie zum Beispiel bei den EJB oder der .NET-Plattform gebunden. Die Abbildung zeigt die Beteiligten des Broker Architekturmusters.

Beteiligte der Broker-Architektur

Beteiligte der Broker-Architektur

Die Vorteile des Broker-Musters sind:

  • Standortunabhängig: Der Broker kümmert sich um das Auffinden von Services.
  • Einfache Änderbarkeit und Erweiterung von Komponenten sofern die Schnittstellen stabil sind.
  • Ein Broker-System ist portierbar.
  • Mehrere Broker-Systeme sind interoperabel.
  • Die Komponenten eines Broker-Systems können wiederverwendet werden.
Jedoch werden dem Broker-Muster auch die folgenden Nachteile zugeordnet:

  • Eingeschränkte Effizienz und hohe Netzwerklast.
  • Niedrige Fehlertoleranz.
  • Schwierige Tests und schwieriges Debuggen.
Zudem ergeben sich im praktischen Einsatz von Broker weitere Einschränkungen. Insbesondere wurde die vorgesehene Interoperabilität zwischen mehreren Broker-Systemen niemals erreicht. Auch die Wiederverwendung funktioniert meist nur effizient innerhalb eines Servers.

Informationen zum Artikel
Deutsch: Broker
Englisch:
Veröffentlicht: 05.04.2010
Wörter: 258
Tags: #Java
Links: .NET, Architektur, Architekturmuster, BS (Betriebssystem), CORBA (common object request broker architecture)