Mit dem FlowOrder-Knoten steuern Sie die Reihenfolge, in der eine Nachricht innerhalb des Nachrichtenflusses verarbeitet wird.
Dieses Thema ist in folgende Abschnitte eingeteilt:
Die Eingabenachricht wird vom FlowOrder-Knoten an das erste Ausgabeterminal übergeben, und die Nachricht wird von der Knotenfolge, die mit diesem Terminal verbunden ist, verarbeitet. Wenn die Nachrichtenverarbeitung beendet ist, übernimmt der FlowOrder-Knoten wieder die Steuerung. Bei erfolgreicher Nachrichtenverarbeitung wird die Eingabenachricht vom FlowOrder-Knoten an das zweite Ausgabeterminal weitergegeben, und die Nachricht wird von der Knotenfolge, die mit diesem Terminal verbunden ist, verarbeitet.
Die Nachricht, die über das zweite Ausgabeterminal weitergegeben wird, ist die Eingabenachricht. Sie wird vom FlowOrder-Knoten nicht geändert. Wird die Baumstruktur 'InputRoot' von einem mit dem ersten Terminal verbundenen Rechenknoten geändert (beispielsweise unter Verwendung von Referenzen), werden diese Änderungen in der Nachricht sichtbar, die an das zweite Terminal übergeben wird.
Sie können diesen Knoten an jeder Stelle in einen Nachrichtenfluss einschließen, an der die Reihenfolge der Ausführung der nachfolgenden Knoten von Bedeutung ist.
Wenn Sie mehrere Knoten an das erste Ausgabeterminal und/oder das zweite Ausgabeterminal anschließen, ist die Reihenfolge, in der die Verbindungen auf jedem Terminal verarbeitet werden, rein zufällig und nicht vorhersehbar. Die Nachricht wird jedoch an alle Zielknoten weitergegeben, die an das erste Ausgabeterminal angeschlossen sind und die alle erfolgreich beendet werden müssen, bevor die Nachricht an einen Knoten weitergegeben wird, der an das zweite Ausgabeterminal angeschlossen ist.
Sie können die Leistung Ihres Nachrichtenflusses erhöhen, wenn Sie den FlowOrder-Knoten in Fällen einfügen, in denen eine für eine Nachricht erforderliche Verarbeitungsfolge bedeutend kürzer als eine andere Verarbeitungsfolge ist. Wenn Sie die kürzere Folge an das erste Terminal anschließen, wird jeder Fehler schnell erkannt, und die Ausführung der zweiten, längeren Verarbeitungsfolge wird verhindert.
Der FlowOrder-Knoten befindet sich im Ablagefach Aufbau der Palette und wird im WebSphere Message Broker Toolkit durch folgendes Symbol dargestellt:
Stellen Sie sich als Beispiel zu Verwendung dieses Knotens vor, dass Ihr Unternehmen Aufträge von Kunden über das Internet erhält. Wenn der Auftrag eingeht, wird er von Knoten verarbeitet, die mit dem ersten Terminal einer Instanz des FlowOrder-Knotens verbunden sind, um den Warenbestand in Ihrer Datenbank auszubuchen und eine Rechnung auszustellen. Dann wird geprüft, ob der Kunde zugestimmt hat, dass seine Angaben anderen Herstellern zur Verfügung gestellt werden dürfen. Wenn der Kunde dies ablehnt, schlägt diese Prüfung fehl, und es findet keine weitere Verarbeitung statt. Wenn der Kunde einverstanden ist, dass seine Daten an andere Unternehmen weitergegeben werden (der Test also erfolgreich ist), wird die Eingabenachricht an das zweite Terminal weitergegeben, damit die Kundendaten der Mailing-Liste hinzugefügt werden können.
Der FlowOrder-Knoten besitzt keine konfigurierbaren Eigenschaften, die sich auf seine Funktionsweise auswirken. Sie legen die Funktionsweise fest, indem Sie die ersten und zweiten Ausgabeterminals an nachfolgende Knoten in Ihrem Nachrichtenfluss anschließen.
Die Nachricht, die über das zweite Terminal weitergegeben wird, ist mit der Nachricht identisch, die über das erste Terminal weitergegeben wurde. Änderungen, die Sie nach der ersten Verarbeitungsphase vorgenommen haben, werden von diesem Knoten ignoriert.
Schlägt die erste Verarbeitungsphase fehl, übernimmt der FlowOrder-Knoten keine Steuerung mehr und gibt die Nachricht nicht über das zweite Terminal weiter.
Wenn Sie eine Instanz des FlowOrder-Knotens in einen Nachrichtenfluss eingereiht haben, können Sie ihn konfigurieren. Der Abschnitt Nachrichtenflussknoten konfigurieren enthält weitere Informationen hierzu. Die Knoteneigenschaften werden in der Eigenschaftenansicht angezeigt.
In der folgenden Tabelle werden die FlowOrder-Knotenterminals beschrieben .
Terminal | Beschreibung |
---|---|
Eingabeterminal (In) | Das Eingabeterminal, das eine Nachricht zur Verarbeitung durch einen Knoten annimmt |
Fehlerterminal (Failure) | Das Ausgabeterminal, an das die Nachricht geleitet wird, wenn während der Berechnung ein Fehler auftritt. |
Erstes | Das Ausgabeterminal, an das die Eingabenachricht in der ersten Instanz geleitet wird. |
Zweites | Das Ausgabeterminal, an das die Eingabenachricht in der zweiten Instanz geleitet wird. Die Nachricht wird nur dann an dieses Terminal weitergeleitet, wenn sie erfolgreich an das erste Terminal geleitet wurde. |
In der folgenden Tabelle werden die Knoteneigenschaften beschrieben. Die Spalte O zeigt an, ob die Eigenschaft obligatorisch ist (markiert mit einem Sternchen, wenn ein Wert eingegeben werden muss, weil kein Standardwert definiert ist). Die Spalte K zeigt an, ob die Eigenschaft konfigurierbar ist (Wert kann geändert werden, wenn der Nachrichtenfluss zur BAR-Datei hinzugefügt wird, um ihn einzusetzen).
In der folgenden Tabelle werden die Beschreibungseigenschaften des FlowOrder-Knotens beschrieben.
Eigenschaft | O | K | Standardwert | Beschreibung |
---|---|---|---|---|
Knotenname | Nein | Nein | FlowOrder | Der Name des Knotens. |
Kurzbeschreibung | Nein | Nein | Kurze Beschreibung des Knotens. | |
Langbeschreibung | Nein | Nein | Text, der den Zweck des Knotens im Nachrichtenfluss beschreibt |
Eigenschaft | O | K | Standardwert | Beschreibung |
---|---|---|---|---|
Ereignisse | Nein | Nein | Ohne | Auf dieser Registerkarte werden Ereignisse angezeigt, die Sie für den Knoten
definiert haben. Standardmäßig sind für keinen Knoten in einem Nachrichtenfluss
Überwachungsereignisse definiert. Über Hinzufügen,
Bearbeiten und Löschen können Sie
Überwachungsereignisse für den Knoten erstellen, ändern oder löschen (Details siehe
Überwachungsereignisquellen mithilfe von Überwachungseigenschaften konfigurieren). Sie können hier angezeigte Ereignisse aktivieren oder inaktivieren, indem Sie das Kontrollkästchen Aktiviert aktivieren oder inaktivieren. |