Lade Inhalt...

Java Message Service - Technologie und Anwendung

Hausarbeit 2001 22 Seiten

Informatik - Software

Leseprobe

Inhaltsverzeichnis

1. Java Message Service
1.1 Messaging, ja und?
1.1.1 Enterprise Messaging
1.1.2 MOM - Message-Oriented Middleware
1.1.2.1 Features vom MOM
1.1.2.2 Vorteile von MOM
1.2 Java Messaging
1.2.1 Die JMS Architektur
1.2.2 Point-to-Point Messaging
1.2.3 Publish-and-Subscribe Messaging
1.2.4 Eine Java Message
1.2.5 Messaging Typen

2. JMS in der Praxis
2.1 Verteilte Systeme mit Pub/Sub Messaging
2.2 JMS und Wireless

Literaturverzeichnis

Abbildungsverzeichnis

1. Java Message Service

Dieser erste Abschnitt focusiert den technischen Hintergrund des Java Message Service. Es werden erste Grundlagen vermittelt, um einen Einblick in diese Technologie zu vermitteln.

1.1 Messaging, ja und?

Menschen und Computer benutzen Messaging Systeme, um ¸ber elektronische Netzwerke zu kommunizieren. Ein allen bekanntes Messaging System der Mensch- zu-Mensch Kommunikation ist wohl e-Mail. Auf diese Art des Messaging wird in dieser Arbeit nicht eingegangen, sondern auf Systeme, die die Kommunikation einzelner Applikationen ¸ber Netzwerke erlauben. Wenn diese Application-to- Application Messaging Systeme in Business-Systemen eingesetzt werden, spricht man von Enterprise Messaging Systemen oder Message-Oriented Middleware, kurz MOM.

Enterprise Messaging Systeme (EMS) erlauben einzelnen Applikationen in einem Netzwerk den gegenseitigen Datenaustausch. Eine Message ist ein "autonomes" Gebilde, bestehend aus Daten und Routinginformationen. In EMS werden Messages eingesetzt, ¸ber diese die Applikationen Ereignisse, die in anderen Systemteilen stattfinden, austauschen kˆnnen.

MOM ¸bermittelt diese Messages innerhalb eines Netzwerkes und stellen sicher, dass diese auch bei dem Empf‰nger ankommen.

In allen modernen EMS tauschen die Applikationen Messages ¸ber virtuelle Kan‰le, sogenannte Chanels, aus. Wenn eine Message gesendet wird, wird sie nicht einer bestimmten Applikation, sondern einem bestimmten Chanel, einer destination, zugeordnet. Jede Applikation, die sich auf einem destination Kanal registriert, bekommt diese Message zugestellt. Sender und Empf‰nger sind also voneinander getrennt.

Die MOM Anbieter haben eigene APIs f¸r das Senden und Empfangen von Messages. Trotz der Implementierung spezieller Protokolle ist doch die grundlegende Semantik einheitlich, erst diese macht erst den JMS mˆglich.

1.1.1 Enterprise Messaging

Das bereits erw‰hnte Enterprise Messaging ist kein neues Konzept. Produkte wie IBM MQSeries, Microsoft MSMQ, Open Horizon Ambrosia und andere sind schon seit Jahren auf dem Markt. Neuere Messaging Systeme wie Softwired iBus und FioranoMQ sind unterdessen auf neuere Anforderungen, wie die Kommunikation ¸ber das Internet oder mit mobilen Endger‰ten, optimiert.

Eines der Kernkonzepte von EMS ist die asynchrone ‹bertragung der Messages, die von einem Netzwerk zu einem anderen ¸bertragen werden. Der Sender muss nicht auf eine Quittierung der Gegenstelle warten, sondern kann sich sofort nach dem senden wieder anderen Prozessen widmen. Asynchrone Nachrichten sind "autonome" Einheiten, sie enthalten alle Informationen, die von der Business Logik zur weiteren Verarbeitung benˆtigt werden.

Abbildung in dieser Leseprobe nicht enthalten

Abbildung 1: Message-Oriented Middleware

1.1.2 MOM ñ Message-Oriented Middleware

Da der Begriff MOM schon des ˆfteren gefallen ist, wird in diesem Kapitel ein ‹berblick ¸ber diese Systeme aufgezeigt.

Message-Oriented Middleware fungiert als Vermittler in Enterprise Messaging Systemen. MOM stellt Funktionen bereit, die Programme zum Erzeugen, Senden und Empfangen von Nachrichten benˆtigen. Dies kann auch asynchron, also ohne eine permanente Kopplung der Systeme, geschehen und die MOM ¸bernimmt die Garantie der Zustellung, die Transaktionskontrolle und Empfangsbest‰tigung.

Der zentrale Gedanke hinter MOM ist das Konzept derdestination. Clients senden Nachrichten an eine sogenannte destination, und dadurch wird der MOM bekantgegeben, welche Applikationen die Nachrichten erh‰lt. Im Folgenden werden einige Features von MOM beschrieben.

1.1.2.1 Features vom MOM

ΠGuaranteed Message Delivery

Applikationen kˆnne Nachrichten austauschen, selbst wenn diese nicht mit dem Netzwerk verbunden sind. MOM stellt sicher, das die Nachrichten erhalten werden, sobald die n‰chste Netzwerkverbindung aufgebaut wird und die empfangende Applikation das Senden einer Nachricht initiiert. Dieses Store-and- Forward Prinzip ist in Abb. 2 erl‰utert.

ΠAsynchronous Communications

Wenn eine Client Applikation eine Nachricht an eine empfangende Applikation abgesetzt hat, erlaubt MOM dem Sender die sofortige weitere Arbeit, ohne auf eine Empfangsbest‰tigung der empfangenden Applikation zu warten.

ΠOne Time, in-Order Delivery

MOM unterst¸tzt die garantierte Auslieferung einer Nachricht. Dar¸ber hinaus stellt sie sicher, dass die Nachrichten nur einmal und in der richtigen Reihenfolge zugestellt werden.

ΠMessage Routing Services

Dieser Service gibt der Client Applikation die Mˆglichkeit, die Nachricht unter Benutzung des least-cost routing zu versenden. Der MOM Administrator muss nur einmal die Gewichtung der einzelnen Routen definieren und das System w‰hlt dann den schnellsten Pfad. Die MOM ist auch in der Lage, Netzunterbr¸che zu umgehen.

ΠNotification Services

Die MOM erlaubt es, Nachrichten asynchron zu senden. Da es aber des ˆfteren notwendig sein wird, dass der Sender dar¸ber Informiert wird, wann eine Nachricht zugestellt wurde, ¸bernimmt das MOM diese Aufgabe.

1.1.2.2 Vorteile von MOM

MOM reduziert die Komplexit‰t bei der Entwicklung von Applikationen, die mehrere Betriebssysteme und verschiedene Netzwerkprotokolle involvieren. Mit der Bereitstellung von APIs, wie z.B. der JMS, die sich transparent ¸ber die verschiedenen Netze und Plattformen ausdehnen, erhˆhen MOMs die Flexibilit‰t einer Architektur und bef‰higen Applikationen, Nachrichten untereinander auszutauschen, ohne zu wissen, auf welchen Plattformen und mit welchen Prozessortypen diese laufen.

Verteilte Systeme, die auf einer Messaging Architektur beruhen sind sehr leicht zu modifizieren bzw. zu erweitern.

Die ganze Kommunikation der Applikationen ist durch Nachrichten realisiert, die ¸ber MOM Server gerouted werden. Dies macht es sehr einfach, zus‰tzliche Applikationen zu dem System hinzuzuf¸gen oder zu entfernen, ohne wieder alles neu compilieren, neu linken, ja sogar ohne die laufenden Applikationen anhalten und neu starten zu m¸ssen.

Durch das Feature der Guaranteed Message Delivery ist sichergestellt, dass keine Nachrichten verloren gehen. Dieses Verfahren ist noch einmal in folgender Abbildung aufgezeigt.

Abbildung in dieser Leseprobe nicht enthalten

Abbildung 2: Store-and-Forward Messaging

Einige andere Vorteile:

ΠRobustness to Change

Applikationen in heterogenen Umgebungen kommunizieren und interagieren transparent, jede Applikation arbeitet unabh‰ngig von, und asynchron mit, anderen.

ΠTime Independence

Weder der Nachrichtensender, noch der Nachrichtenempf‰nger muss online sein. Das MOM speichert die Nachrichten, wenn die Empf‰nger nicht erreichbar sind.

ΠLocation Independence

Der Nachrichtensender und der Nachrichtenempf‰nger kˆnnen von Rechner zu Rechner wechseln, ohne das dies die Funktionalit‰t des Gesamtsystems beeinflusst. Dadurch wird es Mˆglich, Software- als auch Hardwarekomponenten zu warten, ohne das System aus der Produktivumgebung zu isolieren, bzw. anzuhalten. Applikationen kˆnnen auf andere Rechner portiert werden, ohne eine Unterbrechung des Gesamtprozesses herbeizuf¸hren.

ΠLatency Hiding

In traditionellen, synchronen Systemen sendet der Client seine Anfrage an ein anderes System und muss auf dessen Antwort warten. Dies macht es schwieriger, eine GUI zu entwerfen, die w‰hrend l‰ngerer Transaktionen ansprechbar bleibt. Bei dem Einsatz von MOM ist die Anfrage- und Antwortphase voneinander vˆllig unabh‰ngig. Wenn eine Anfrage erst einmal gesendet ist, kann sofort mit der n‰chsten Aufgabe weitergemacht werden.

ΠScalability

Wenn in einem System immer mehr Clients hinzukommen, die Anfragen stellen, so stellt man einfach einen zweiten Rechner auf, der den selben NachrichtenQueue bearbeitet.

ΠSimplicity

MOMs beruhen auf der einfachen Idee derdestination, in die einfach Nachrichten geschrieben, respektive aus der Nachrichten gelesen werden.

1.2 Java Messaging

Der Java Message Service, Teil der Java 2 Enterprise Edition (J2EE), stellt ein Standard API bereit, um Entwicklern den Zugriff auf die Features von EMS zu erlauben. JMS bietet ein standardisiertes, Java-basiertes Interface zu den Messaging Systemen einiger MOM Provider.

JMS beruht unter anderem auf den Anstrengung der Industrie, einen gemeinsamen Standard zu finden. JavaSoft hat die F¸hrungsrolle in der Erarbeitung einer Spezifikation ¸bernommen.

Das grundlegende Ziel war es, ein Java API zu entwickeln, das den Zugriff auf MOMs erlaubt. Dieses Vorhaben wurde schnell dahingehend erweitert, eine Mˆglichkeit anzubieten, auf Java basierende verteilte Systeme zu implementieren, vergleichbar mit Remote Procedure Calls (RPC), die auf Techniken wie CORBA oder Enterprise JavaBeans aufbauen.

There were a number of MOM vendors that participate in the creation of JMS. It was an industry effort rather than Sun effort. Sun was the spec lead and did shepherd the work but it would not have been succsessful without the direct involvement of the messaging vendors. Although our original objective was to provide a Java API for connectivity to MOM systems, this changed over the course of the work to a broader objective of supporting messaging as a first class Java distributed computing paradigm on equal footing with RPC.

-Mark Hapne, JMS spec lead, Sun Microsystems

[...]

Details

Seiten
22
Jahr
2001
ISBN (eBook)
9783638121132
Dateigröße
751 KB
Sprache
Deutsch
Katalognummer
v3443
Institution / Hochschule
Hochschule Furtwangen – Wirtschaftsinformatik
Note
1,7
Schlagworte
Java Message Service Technologie Anwendung Praktisches Studiensemester

Autor

Zurück

Titel: Java Message Service - Technologie und Anwendung