Zum Inhalt springen
L

Wikipedia · einfach zusammengefasst · Stand

Integrationsmuster

Integrationsmuster können sowohl zur Mediation (Intra-Kommunikation; innerhalb einer Anwendung) als auch zur Föderation (Etra-Kommunikation; zwischen …

Inhalt6 Abschnitte
  1. 1. Begriff und Zweck
  2. 2. Grundlegende Integrationsstile
  3. 3. Kanäle und Zustellung
  4. 4. Aufbau von Nachrichten
  5. 5. Routing und Verarbeitung
  6. 6. Endpunkte und Systemmanagement

Begriff und Zweck

Ein Integrationsmuster beschreibt die Kommunikation zwischen Softwarekomponenten und dient der Enterprise Application Integration, also der Verbindung von Anwendungen und ihren Bestandteilen. Es kann zur Mediation eingesetzt werden, die im Artikel als Intra-Kommunikation innerhalb einer Anwendung bezeichnet wird, oder zur Föderation, die dort als Etra-Kommunikation zwischen Anwendungen beschrieben ist.

Solche Muster sind wichtig, weil Verbindungen zwischen verteilten Komponenten zeitlichen Verzögerungen und Störungen unterliegen. Außerdem erfüllen die Komponenten unterschiedliche Aufgaben und Anforderungen, während sich Softwaresysteme im Laufe ihrer Entwicklung verändern. Integrationsmuster bilden deshalb eine Mustersprache, mit deren Hilfe Entwickler funktionierende Kommunikationslösungen zwischen Systemen umsetzen können.

Grundlegende Integrationsstile

Zu den grundlegenden Integrationsstilen gehören Dateiübertragung (file transfer), eine geteilte Datenbank (shared database), Remote Procedure Invocation und Messaging. Bei Messaging werden Informationen in Form von Nachrichten ausgetauscht.

Weitere grundlegende Bausteine sind Messaging Systems, Message Channel und Message. Das Muster Pipes und Filter verbindet Verarbeitungsschritte, während Message Router, Message Translator und Message Endpoint für Weiterleitung, Übersetzung beziehungsweise Endpunkte von Nachrichten stehen.

Kanäle und Zustellung

Benachrichtigungskanäle legen fest, auf welchem Weg Nachrichten übertragen und verteilt werden. Genannt werden Punkt-zu-Punkt und Publish-Subscribe sowie der Datentyp-Kanal (datatype channel), der Invalid-Message-Kanal (invalid message channel) und der Dead-Letter-Kanal (dead letter channel).

Weitere Muster betreffen die garantierte Zustellung (guaranteed delivery), den Kanaladapter, die Messaging Bridge beziehungsweise Benachrichtigungsbrücke und den Message Bus.

Aufbau von Nachrichten

Muster der Nachrichtenstruktur bestimmen Form und Zusammenhang der übertragenen Informationen. Die Liste unterscheidet Kommando-Nachricht (command message), Dokumentnachricht (document message) und Ereignisnachricht (event message).

Request-Reply beschreibt die Verbindung von Anfrage und Antwort. Return Address nennt die Rücksendeadresse, während ein Correlation Identifier zusammengehörige Nachrichten kennzeichnet. Ergänzend werden Message Sequence für Nachrichtenfolgen, Message Expiration für den Ablauf einer Nachricht und Format Indicator für die Kennzeichnung ihres Formats aufgeführt.

Routing und Verarbeitung

Nachrichten-Routing umfasst Muster zur Auswahl von Wegen, Empfängern und Verarbeitungsschritten. Dazu gehören der inhaltsbasierte Router (content-based router), Nachrichtenfilter (message filter), dynamische Router (dynamic router) und Empfängerlisten (recipient list).

Splitter teilen Nachrichten auf; Aggregator und Resequencer führen Teile zusammen beziehungsweise bringen sie wieder in eine Reihenfolge. Weitere Muster sind Composed Message Processor, Scatter-Gather, Routing Slip, Prozessmanager (process manager) und Message Broker.

Zur Anpassung von Inhalten und Formaten nennt der Artikel Nachrichtentransformation (message transformation), Envelope Wrapper, Content Enricher, Inhaltsfilter (content filter), Claim Check und Normalizer. Ein kanonisches Datenmodell (canonic data model) stellt ein gemeinsames Datenformat für die beteiligten Komponenten bereit.

Endpunkte und Systemmanagement

Nachrichten-Endpunkte verbinden das Nachrichtensystem mit sendenden, empfangenden oder verarbeitenden Komponenten. Genannt werden Messaging Gateway, Messaging Mapper und der transaktionale Klient (transactional client). Polling Consumer und Event-Driven Consumer bezeichnen unterschiedliche Arten des Nachrichtenempfangs. Hinzu kommen Competing Consumers, Message Dispatcher, Selective Consumer, Durable Subscriber, Idempotent Receiver und Dienstaktivator (service activator).

Das Systemmanagement umfasst Muster zur Steuerung, Beobachtung, Speicherung und Prüfung der Kommunikation: Kontrollbus (control bus), Umleitung (detour), Wire Tap, Nachrichtenhistorie (message history), Nachrichtenspeicher (message store), Smart Proxy, Testnachricht (test message) und Channel Purger.

Weiterlesen