Pitschadell, R. (2009). Design and implementation of an extended, serverless Java Message Service (JMS) using the XVSM Shared Data Space [Diploma Thesis, Technische Universität Wien]. reposiTUm. http://hdl.handle.net/20.500.12708/186615
E185 - Institut für Computersprachen ; Institut für Softwaretechnik und Interaktive Systeme
-
Date (published):
2009
-
Number of Pages:
155
-
Keywords:
JMS Java Message Service XVSM MozartSpaces EAI Enterprise Application Integration
de
JMS Java Message Service XVSM MozartSpaces EAI Enterprise Application Integration
en
Abstract:
Enterprise Application Integration (EAI) verbindet verschiedene unabhängige Anwendungen, verteilt in verschiedenen Geschäftsbereichen und Abteilungen einer Firma, zu einem integrierten System.<br />Message-orientierte Middleware (MOM) ist für die Erstellung so eines verteilten Systems mit hohen Anforderungen an Datendurchsatz, Ausfallsicherheit und Skalierbarkeit, sehr gut geeignet. Der große Vorteil solcher Systeme liegt, im Gegensatz zu Remote Procedure Calls (RPC), in der standardmäßig asynchronen Kommunikation, die eine unabhängige Verbindung in Zeit, Raum und Synchronisation zwischen Sender und Empfänger ermöglicht. Die Kommunikationspartner müssen nicht zur selben Zeit in Betrieb sein. Sie müssen sich nicht gegenseitig kennen und müssen auch nicht auf Synchronisationsergebnisse warten. Damit können sie auch bei teilweisen Systemausfällen den sicheren Betrieb des Gesamtsystems gewährleisten. Neben einer Vielzahl an proprietären Systemen hat sich im Java Bereich in den letzten Jahren der von Sun Mircrosystems entwickelte Standard JMS (Java Message Service) etabliert. Die meisten JMS Provider laufen in einer Client-Server Architektur. Ziel dieser Arbeit ist es, existierende JMS Implementierungen zu analysieren und selbst einen serverlosen JMS Provider zu entwickeln.<br />Diese JMS Version wird auf einem XVSM (eXtensible Virtual Shared Memory) System aufgebaut. XVSM stellt einen gemeinsam genutzten Datenraum für die Kommunikation und Zusammenarbeit von autonomen Software Komponenten zur Verfügung. Es ermöglicht, Anforderungen wie Ausfallsicherheit und hohe Skalierbarkeit mit einem serverlosen Lösungsansatz gerecht werden zu können. Die Kernaufgaben der Arbeit bestehen im Entwickeln geeigneter Datenstrukturen für verschiedene Message-Typen (Publish/Subscribe, Point-to-Point), Integration von Transaktionsmechanismen und Performance Tests. Zusätzliche Funktionalitäten wie Message Selektion, Prioritätskontrolle oder Queue Monitoring sollen analysiert werden, um die JMS API zu erweitern.<br />
de
Enterprise Application Integration (EAI) connects different independent systems, distributed in different divisions and departments of a company, to build a large, integrated solution. Message oriented Middlewares (MOM) are applicable for such distributed systems with high demand on data transfer, reliability and scalability. The great advantage compared to remote procedure calls (RPC) is the asynchronous communication. This offers a loosely coupled communication in time, space and synchronisation between sender and receiver. The communication participants do not need to work at the same time. They neither need to know of each other nor to wait for synchronisation results. It is possible to provide a reliable business system even if sometimes parts have been dropped out.<br />Besides many proprietary systems, JMS (Java Message Service), a standard developed by Sun Microsystems, established in the Java segment over the years. Most JMS implementations run in a client server architecture.<br />Objective of this master thesis is to analyse existing JMS providers and to develop a serverless JMS Java API implementation. The release is constructed on top of an extensible virtual shared memory XVSM system.<br />XVSM provides a shared data space for communication and collaboration of several autonomous software components. It offers reliability and high scalability with a serverless approach.<br />The objective of this thesis is to develop adequate data structures for different message types (publish/subscribe, point to point), to integrate transaction techniques and to perform benchmark tests. Further additional features, like message selection, priority control or queue monitoring shall be analysed in order to extend the JMS API.