22.01.2014 Aufrufe

Download (5Mb) - oops/ - Oldenburger Online-Publikations-Server

Download (5Mb) - oops/ - Oldenburger Online-Publikations-Server

Download (5Mb) - oops/ - Oldenburger Online-Publikations-Server

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

62 Entwurf<br />

• Verteilung von Kontext-Informationen, von einem Sensor in der Umgebung, zu einem zentralen<br />

System oder anderen Sensoren<br />

• Kommunikation zwischen kontextbewussten Anwendungen<br />

Zur Unterstützung dieser Anwendungsfälle wird das AMQP-Netzwerkprotokoll eingesetzt, wie<br />

weiter im 7.3.4 vorgestellt.<br />

Advanced Message Queuing Protocol (AMQP) ist ein standardisiertes, frei benutzbares Netzwerkprotokoll,<br />

welches die Kommunikation zwischen einer Anwendung und ein <strong>Server</strong>-System (ein “Broker”)<br />

ermöglicht. Die Bedingung dafür ist natürlich, dass sowohl die Anwendung als auch das Broker<br />

dem beschriebenen AMQP-Standard übereinstimmen.<br />

Der offene Standard AMQP wurde 2004 von dem Finanzinstitut namens JPMorgan Chase eingeführt<br />

als eine Lösung für Message Queuing (MQ)-bezogene Bedürfnisse und Topologien. Das Message<br />

Queuing Konzept wurde im Jahr 1985 entwickelt und lässt sich anhand der ursprüngliche Beschreibung<br />

– ein “Software Datenbus” (später als The Information Bus (TIB) bekannt), die Information von<br />

einer Anwendung zu einer anderen interessierten Anwendung übermittelt. Durch dieses Konzept wurde<br />

die häufig eintretende Problematik der Integration verschiedener Softwarelösungen angegangen.<br />

Darüber hinaus sollte die Lösung eine immer steigende Belastung an Mitteilungen aufrechterhalten<br />

[VW12]. An dieser Stelle kann das vorhersehbare Beispiel einer Anwendungsfall für AMQP gegeben<br />

werden: der Handel mit Aktien oder Trading.<br />

Aus diesem Grund ist die geleistete Interoperabilität ein nennenswerter Aspekt des AMQP-Protokolls<br />

– es können AMQP-konforme Systeme miteinander kommunizieren, trotz technologischer Heterogenität<br />

(z.B. andere Ziel-Plattformen, Programmiersprachen). Darüber hinaus lassen sich beliebige<br />

Typen von Mitteilungen (engl. payload) verschicken, wie z.B. ein JSON-Objekt, eine String-Wert,<br />

binäre Inhalte oder sogar Medien [VW12].<br />

Erforderlich für die Kommunikation ist die Präsenz einer Bezeichnung (engl. label), die den Namen<br />

des Exchange (s.u.) enthält. Die Aufgabe des Brokers ist mögliche Verbraucher anhand dieser<br />

Bezeichnung auszuwählen und sie über die Mitteilung zu informieren. Die Benennung eines bestimmten<br />

Empfängers vom Erzeuger ist im Vergleich zum TCP-Protokoll daher nicht benötigt [VW12]. Ein<br />

Empfänger wird wie gesagt vom Broker ausgewählt.<br />

Aus Sicht der Architektur wird ein “Broker” (auch als Message-Oriented Middleware bekannt)<br />

benötigt, die die Kommunikation verwaltet. Die Verwaltung (bzw. die Distribution oder Routing, sowie<br />

die Persistenz der nicht zustellbaren Mitteilungen) hat als Basis verschiedene AMQP-spezifische<br />

Konzepte, die in der Abbildung 5.2 zusammengefasst sind.<br />

Abbildung 5.2: Zentrale Konzepte des AMQP-Netzwerkprotokolls.<br />

Quelle: Angelehnt an http://rubyamqp.info/articles/getting_started

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!