Applikationen miteinander zu verbinden ist eine der größten Herausforderungen heutiger Enterprise Netzwerke. Seit Jahren ausgereifte und stabile Systeme sollen und können nicht einfach durch moderne Varianten ersetzt werden – nicht zuletzt wären die Kosten hierfür einfach zu groß. Stattdessen müssen sie auf geeignete Art und Weise in das Unternehmensnetzwerk integriert und mit anderen Applikationen verknüpft werden. Neben der grundsätzlichen Integrationsproblematik spielt auch Flexibilität eine große Rolle. Aufgabe der IT ist es, Geschäftsprozesse zu unterstützen. Daher muss sie sich auch fortwährend an diesen Prozessen ausrichten. Im Zeitalter der Globalisierung ändern sich Pro-zesse aber sehr schnell, um das Unternehmen laufend an neue Marktsituationen anzupassen. Die IT steht vor der Herausforderung, hier Schritt zu halten und Anwendungssysteme schnell und flexibel miteinander zu verknüpfen.
Punkt-zu-Punkt Verknüpfungen, also Infrastrukturen, in denen jedes System mit jedem anderen vernetzt wird, sind hier offensichtlich nicht geeignet. Die schiere Menge an individuell zu erstellenden Kopplungen ist schlicht zu groß. Es bedarf Integrationslösungen, die Dienstnutzer und Dienstanbieter einerseits entkoppeln, andererseits aber die Kommunikation zwischen ihnen sicherstellen. Und genau dies ist Aufgabe des Enterprise Service Bus. Mit der Geburt und Verbreitung des Begriffes gingen Hersteller dazu über, ihre bereits bestehenden Produkte etwas zu modifizieren und in „Enterprise Service Bus“ Lösungen umzubenennen. Daneben entstanden neue Produkte, unter anderem auch auf Open-Source basierend, die speziell auf das Konzept eines Integrationsbusses hin entwickelt wurden. Gerade Open-Source-Lösungen stellen eine interessante Alternative zu kommerziellen Produkten dar. Sie setzen auf Offenheit, Standards und auf Unterstützung mit Community-Gedanken. Die Idee, ein Produkt frei verfügbar anzubieten, um in den späteren Phasen über Support und Beratung Einnahmen zu erzielen, führt zu einer großen Zahl an Erstanwendern. Deren Erfahrungen werden offen kommuniziert und fließen in neue Produktreleases ein. Im Rahmen der Arbeit werden verschiedene Open-Source Enterprise Service Bus Systeme beleuchtet und untersucht, inwieweit diese den Erwartungen einer umfassenden Integrationslösung entsprechen. Dabei werden auch Themen wie Betrieb, Überwachung und Dokumentation beleuchtet, um abschließend eine Bewertung zur Praxistauglichkeit zu formulieren.
Inhaltsverzeichnis
1 Einführung
2 Der Enterprise Service Bus
2.1 Definition
2.2 Anforderungen an einen Enterprise Service Bus
2.3 Java Business Integration
3 Rahmen der Untersuchung
3.1 Ziel der Untersuchung
3.2 Formulieren eines Beispielprozesses
3.2.1 Überblick über das Beispielszenario
3.2.2 Technische Realisierung
3.3 Bewertungskatalog
4 Untersuchung der Produkte
4.1 Die Open-Source-Lösung Mule
4.1.1 Architektur
4.1.2 Das Beispielszenario: Umsetzung und Erfahrungen
4.1.3 Bewertung der Kriterien
4.1.4 Fazit
4.2 Die Open-Source-Lösung ServiceMix
4.2.1 Architektur
4.2.2 Das Beispielszenario: Umsetzung und Erfahrungen
4.2.3 Bewertung der Kriterien
4.2.4 Fazit
4.3 Die Open-Source-Lösung Glassfish ESB
4.3.1 Architektur
4.3.2 Das Beispielszenario: Umsetzung und Erfahrungen
4.3.3 Bewertung der Kriterien
4.3.4 Fazit
5 Vergleich und Fazit
Zielsetzung & Themen
Die Arbeit untersucht drei etablierte Open-Source Enterprise Service Bus (ESB) Systeme – Mule, ServiceMix und Glassfish ESB – hinsichtlich ihrer Eignung für unternehmenskritische Integrationsaufgaben. Ziel ist es zu prüfen, inwieweit diese Lösungen die Anforderungen einer umfassenden Integrationsplattform erfüllen und wie sie sich in einem praktischen, nachgebildeten Fahrzeugbestellprozess in Bezug auf Handhabung, Betrieb und Konfigurierbarkeit schlagen.
- Evaluierung von Open-Source ESB-Architekturen auf Java-Basis.
- Analyse von Anforderungen an Routing, Transformation, Sicherheit und Zuverlässigkeit.
- Durchführung eines standardisierten Praxistests anhand eines Fahrzeugbestell-Beispielszenarios.
- Vergleich der Lernkurven und der Praxistauglichkeit der gewählten Produkte.
- Bewertung der unternehmensrelevanten Faktoren wie Dokumentation, Support und Governance.
Auszug aus dem Buch
Nachrichtenweiterleitung
Kernaufgabe des Enterprise Service Bus ist die korrekte Weiterleitung von Nachrichten (Routing) an den oder die vorgesehenen Empfänger. Zur Umsetzung dieser Aufgabe stehen eine Reihe etablierter Mechanismen zur Verfügung, mit denen auf vielfältige Art und Weise der Nachrichtenfluss gesteuert werden kann (Hohpe & Woolf, 2004, S. 208ff.).
INHALTSBASIERTES ROUTING (content-based): Die Nachricht wird aufgrund ihres Inhalts an einen Empfänger geschickt. Da die Routing-Komponente dynamisch den korrekten Empfänger ermitteln kann, muss der Sender die Nachricht nicht mehr an einen speziellen Empfänger adressieren. Dies fördert die Entkopplung von Sender und Empfänger.
FILTER: Eine Nachricht wird nur dann an einen Empfänger weitergeleitet, wenn bestimmte Filterkriterien erfüllt sind. Auch hier muss die Routing-Komponente auf den Inhalt der Nachricht zugreifen können, um Filterkriterien zu prüfen.
POINT-TO-POINT: Aufbau einer virtuellen eins-zu-eins Verbindung zwischen einem Dienstanbieter und Dienstnutzer. „Virtuell“, da eine Entkopplung von Sender und Empfänger über den Bus stattfindet und sich die beiden nicht direkt kennen.
PUBLISH/SUBSCRIBE: Beliebige Empfänger können sich für Nachrichten registrieren. Eine Nachricht wird parallel an alle interessierten Empfänger gesendet, die Empfänger sind voneinander unabhängig. Als Abgrenzung zum weiter unten genannten Typ „Empfängerliste“ hat der Sender bei Publish/Subscribe keinen Einfluss darauf, wer die Nachricht erhalten wird.
EMPFÄNGERLISTE (Recipient-List): Mit dem Prinzip der Empfängerliste wird eine Nachricht parallel an eine Menge von Empfängern geschickt. Wesentliches Merkmal ist, dass der Sender festlegt, an wen die Nachricht geht. Der Versand der Nachricht erfolgt parallel.
ROUTING-SLIP: Die Nachricht wird analog zur Empfängerliste an eine Menge von Empfängern geschickt, allerdings nacheinander. Damit können beispielsweise Validierungen nacheinander aufgerufen werden, oder auch ein Versuch-Irrtum Konzept zur Ermittlung des nächsten erreichbaren Dienstes umgesetzt werden.
RESEQUENCER: Ein Resequencer ist in der Lage, eine Menge von Nachrichten wieder in die richtige Reihenfolge zu bringen. Dazu muss er zustandsbehaftet arbeiten können. Die Ordnung der Nachrichten ermittelt er anhand einer Ordnungsnummer, typischerweise ein Attribut des Nachrichtenheaders.
PROCESS-MANAGER: Ist zur Ermittlung eines nachfolgenden Empfängers umfangreiche Programmlogik erforderlich, so realisiert ein Process-Manager diese Logik.
Zusammenfassung der Kapitel
1 Einführung: Die Einleitung beleuchtet die Herausforderungen der Integration heterogener Unternehmens-Applikationen und begründet die Relevanz von Open-Source ESB-Lösungen.
2 Der Enterprise Service Bus: Dieses Kapitel definiert den Begriff des ESB, stellt zentrale Anforderungen wie Routing und Sicherheit vor und führt in die Java Business Integration (JBI) Spezifikation ein.
3 Rahmen der Untersuchung: Hier werden das Ziel der Arbeit sowie ein konkretes, praxisnahes Beispielszenario (Fahrzeugbestellprozess) definiert, welches als Grundlage für den Bewertungskatalog dient.
4 Untersuchung der Produkte: Dieser umfangreiche Hauptteil analysiert Mule, ServiceMix und Glassfish ESB jeweils hinsichtlich ihrer Architektur, praktischen Umsetzung des Szenarios und Bewertung anhand definierter Kriterien.
5 Vergleich und Fazit: Das abschließende Kapitel fasst die Evaluierungsergebnisse in einer Matrix zusammen und gibt eine Empfehlung für den situationsgerechten Einsatz der Produkte.
Schlüsselwörter
Enterprise Service Bus, ESB, Open-Source, Java Business Integration, JBI, Nachrichtenrouting, Middleware, Systemintegration, Apache Mule, Apache ServiceMix, Glassfish ESB, Service-orientierte Architektur, SOA, Enterprise Integration Patterns, XML-Transformation
Häufig gestellte Fragen
Worum geht es in dieser Arbeit grundsätzlich?
Die Arbeit vergleicht drei populäre Open-Source Enterprise Service Bus (ESB) Systeme (Mule, ServiceMix und Glassfish ESB), um deren Eignung für den produktiven Einsatz in Unternehmen zu bewerten.
Was sind die zentralen Themenfelder der Analyse?
Die Analyse umfasst die Architektur der Systeme, die Fähigkeit zur Nachrichtenweiterleitung (Routing), Transformationsmöglichkeiten, Sicherheitsaspekte und die Unterstützung offener Standards.
Was ist das primäre Ziel der Forschungsarbeit?
Ziel ist eine systematische Bewertung, ob diese Open-Source-Lösungen die komplexen Anforderungen an eine unternehmensweite Integrationsplattform erfüllen können.
Welche wissenschaftliche Methode wird für den Vergleich verwendet?
Es wird eine kriterienbasierte Evaluierung durchgeführt, bei der die Produkte anhand eines einheitlichen Bewertungskatalogs und eines praktischen Beispielszenarios (eines Fahrzeugbestellprozesses) verglichen werden.
Was wird im Hauptteil der Arbeit behandelt?
Der Hauptteil gliedert sich in die detaillierte technische Untersuchung der drei Produkte, wobei jedes System einzeln auf Basis der Architektur, der Umsetzung des Szenarios und der Erfüllungsgrade verschiedener Kriterien beleuchtet wird.
Welche Schlüsselbegriffe charakterisieren diese Untersuchung?
Die Untersuchung konzentriert sich auf Begriffe wie Enterprise Service Bus, JBI-Spezifikation, Middleware, Systemarchitektur und IT-Integrationsmuster.
Warum ist die Wahl zwischen Mule, ServiceMix und Glassfish ESB nicht trivial?
Jede Lösung verfolgt einen anderen Ansatz: Mule ist flexibel und entwicklerzentriert, während ServiceMix und Glassfish ESB stark auf der JBI-Spezifikation basieren, was den Lernaufwand und die XML-Orientierung signifikant beeinflusst.
Welche Rolle spielt die IDE bei der Bewertung von Glassfish ESB?
Die enge Integration in die Netbeans-IDE bietet Glassfish ESB einen entscheidenden Vorteil in der Benutzerfreundlichkeit und Design-Time-Unterstützung, was den komplexen Einstieg in die WSDL-basierte Konfiguration teilweise ausgleicht.
Wie wird die "Praxistauglichkeit" in der Studie bewertet?
Die Praxistauglichkeit wird über ein Punktesystem (Zielerreichung) gemessen, das sowohl technische Kriterien als auch Unternehmensanforderungen wie Support-Verfügbarkeit und Dokumentationsqualität einbezieht.
- Arbeit zitieren
- Dipl. Inf. FH Ulrich Biberger (Autor:in), 2009, Open-Source Enterprise Service Bus Lösungen im Vergleich, München, GRIN Verlag, https://www.grin.com/document/131375