IBM WebSphere MQ File Transfer Edition ist ein Produkt, welches im Wesentlichen auf das bereits seit über 15 Jahren etablierte und weit verbreitete Messaging-System IBM WebSphere MQ aufsetzt. Dies möchte ich zum Anlass nehmen, Sie näher in WebSphere MQ einzuführen. Dazu müssen vier zentrale Begriffe näher erläutert werden.

Message
Queue
Queue Manager
Channel

Tab.1: Beziehung zwischen den IBM WebSphere MQ Objekten

Messagingsysteme ermöglichen die Kommunikation zwischen zwei Applikationen, indem Sie als Vermittler zwischen diesen beiden Anwendungen fungieren. Nehmen wir an Anwendung A sei in Microsoft Visual Basic programmiert und Anwendung B in Java. Anwendung B verarbeitet Daten, welche Sie im XML Format von Anwendung A erhält.

Abb. 2: Einfaches Messaging-Szenario

Message

Eine Message bildet die kleinste logische Informationseinheit in einem Messagingsystem. Eine Message entspricht häufig einer Anfrage oder Antwort eines Kommunikationspartners. Sie ist ein Container in dem eine beliebige Datei oder Text abgelegt werden kann. Der Message-Header kann unter anderem mit Metainformationen angereichert werden.

Abb. 3 – Struktur einer Message

 

Queue

Nehmen wir an Anwendung A erstellt die zu verarbeitenden Daten zu einer bestimmten Betriebszeit schneller als B sie verarbeiten kann. Dies ist problematisch, wenn Anwendung B unbearbeitete, aber erhaltene Verarbeitungsanforderungen nicht in irgendeiner Form „Zwischenspeichern“ kann. Denn dann werden die überschüssigen Verarbeitungsanforderungen einfach verworfen. Anders verhält es sich, wenn ein „Temporärer Speicher“ für die überschüssigen Anforderungen existiert. Optimalerweise wird dieser zwischen Sender- und Empfänger geschaltet, sodass die starre, synchrone Kommunikation in eine flexible, asynchrone Kommunikation aufgelöst wird. Um einen Datenverlust zu verhindern werden die Informationen in der sogenannten Queue zwischengespeichert. Wie aus Abb.1 ersichtlich wird ist eine Queue eine Ablage für Messages. Alle Messages in der Warteschlange werden nach dem FIFO Prinzip (=First In First Out) abgearbeitet.

Queue Manager

Queue Manager erlauben die aktuellen Queues zu verwalten. Damit auf eine Queue lesend oder schreibend zugegriffen werden kann, muss zuerst ein „Binding“ mit deren Queue Manager aufgebaut werden. Weiterhin erleichtert der Queue Manager die Einrichtung von potentiellen Message-Transportwegen zwischen den Queues. Hierzu muss lediglich einmal ein Verbindung zwischen den zugeordneten Queue Managern angelegt werden..

Channel

Eben diese Verbindungen werden als Channel bezeichnet. Mittels der Channels werden also systemübergreifend Messages zwischen verschiedenen Queues transportiert. Auch eine Anbindung von WebSphere MQ Clients ist mittels der Channels möglich.

Meine knappe WebSphere MQ Einführung ist an dieser Stelle abgeschlossen. Eingangs erwähnte ich, dass WebSphere MQ FTE auf WebSphere MQ aufsetzt, doch nun stellt sich bei Ihnen sicherlich die Frage ein: wieso? Eine Antwort liefert der Vergleich zwischen den Anforderungen an einen Dateitransport im Messagingsystem oder in einer Filetransferlösung.

Dateien sollen möglichst

  • effektiv
  • zuverlässig
  • sicher

über Systemgrenzen hinweg transportiert werden.

Das eben jene Anforderungen von bisherigen Filetransferlösungen kaum erfüllt wurden, zeigt folgende Wikipedia-Definition auf:

„Managed file transfer (MFT) refers to software solutions that facilitate
the secure transfer of data from one computer to another through a
network (e.g., the Internet). MFT solutions are often built using the
FTP network protocol. However, the term specifically describes solutions
that remedy the disadvantages associated with FTP.“

Quelle

Diese legt fest, dass eine MFT Lösung Nachteile bisheriger und weit verbreiteter auf FTP-basierender Filetransferlösungen bestmöglich einschränkt. In der nachfolgenden Tabelle habe ich diese näher aufgelistet.

Nachteil Erklärung
Geringe Zuverlässigkeit – keine Garantie ob ausgeführter Dateitransfer erfolgreich war
– bei Netzausfall müssen alle zu dieser Zeit aktiven Dateitransfers neu eingeleitet werden
– keine automatische Wiederaufnahme der Dateitransfers nach bereinigtem Netzausfall
Geringe Sicherheit – zusätzlicher, erheblicher Programmieraufwand nötig um Dateien oder Datenkanäle verschlüsseln zu können
Unübersichtlichkeit;
im einzelnen nicht nachvollziehbare Dateitransfers
– Informationen zu Dateitransfers werden dezentral geloggt
– Fehler sind somit schwerer festzustellen und
zu beheben
– es können keine Bewertungsregeln für den Versand von mehreren Dateien, die sich semantisch aufeinander beziehen definiert werden
Geringe Transparenz und Flexibilität – Neue Sende- und Empfangspartner müssen manuell vor Ort eingerichtet werden
– Dateitransfers können nicht priorisiert werden
– zusätzlicher Entwicklungsaufwand um ereignisorientierte und zeitorientierte Dateitransfers zu ermöglichen nötig
– große Dateien können häufig nicht versendet werden
– Code Page Conversion über Betriebssystemgrenzen hinweg wird nicht unterstützt

Tab.2 – Nachteile herkömmlicher FTP-basierter Dateitransferlösungen

Zusammenfassend lässt sich also konstatieren, dass FTP nicht dazu geeignet ist, zeitgemäße Bedürfnisse an die Dateitransferqualität zu erfüllen. Dagegen besitzt das Messagingsystem WebSphere MQ bereits einen Großteil der geforderten Funktionalität von Haus aus. Was liegt also näher als ein Programm zu entwickeln, welches WebSphere MQ nutzt und dessen Funktionsumfang zusätzlich um einige nützliche Features erweitert?