Mit dem Collector-Knoten können Sie Nachrichtensammlungen erstellen. Dabei gelten die im Knoten konfigurierten Regeln.
Dieses Thema ist in folgende Abschnitte eingeteilt:
Eine Nachrichtensammlung wird erstellt, sobald die erste Nachricht bei einem der dynamischen Eingabeterminals auf dem Collector-Knoten eingeht. Nachrichtensammlungen werden in einer WebSphere MQ-Warteschlange gespeichert.
Wenn die Bedingungen, die vom Ereignishandler für eine Nachrichtensammlung gesetzt wurden, erfüllt sind, ist die Nachrichtensammlung vollständig und kann weitergeleitet werden. Wenn Sie beispielsweise die Ereignishandler auf dem Collector-Knoten so eingestellt haben, dass diese auf den Empfang von zwei Nachrichten von den jeweiligen Eingabeterminals warten sollen, ist die Nachrichtensammlung vollständig, wenn jeweils zwei Nachrichten von den Terminals empfangen wurden. Wenn die nächste Nachricht beim Eingabeterminal eingeht, wird sie zu einer neuen Nachrichtensammlung hinzugefügt. Sie können für die Koordination der Weitergabe von Nachrichten zwischen einer Reihe von Möglichkeiten wählen. Sie können angeben, dass die Nachrichtensammlung automatisch zur Verarbeitung oder alternativ beim Empfang einer Steuernachricht weitergegeben wird.
Über eine Eigenschaft auf dem Collector-Knoten können Sie auch ein Verfallszeitlimit für Nachrichtensammlungen angeben, die nicht in einem angemessenen Zeitraum fertiggestellt werden. Die Verfallszeit beginnt, wenn die erste Nachricht zu einer Nachrichtensammlung hinzugefügt wird. Wenn das Zeitlimit abläuft, bevor die Nachrichtensammlung vollständig ist, wird die unvollständige Nachrichtensammlung an das Terminal Expire weitergeleitet. Legen Sie einen Wert für das Objektgruppenzeitlimit fest, um sicherzustellen, dass unvollständige Nachrichtensammlungen nicht endlos in einer Warteschlange gespeichert werden. Fügen Sie Ihrem Nachrichtenfluss die entsprechende Verarbeitung zur Handhabung von unvollständigen Nachrichtensammlungen hinzu.
Der Collector-Knoten befindet sich im Ablagefach Routing der Nachrichtenflussknotenpalette und wird in WebSphere Message Broker Toolkit durch folgendes Symbol dargestellt:
Informationen zu Beispielen können nur bei Verwendung des in das WebSphere Message Broker Toolkit integrierten bzw. online verfügbaren Information Center angezeigt werden. Muster können nur ausgeführt werden, wenn das im WebSphere Message Broker Toolkit integrierte Information Center verwendet wird.
Der Collector-Knoten verfügt über ein statisches Eingabeterminal (Control) sowie vier statische Ausgabeterminals (Out, Expire, Failure und Catch). Diese statischen Terminals sind immer im Knoten vorhanden. Zusätzlich zu den statischen Eingabe- und Ausgabeterminals können Sie dynamische Eingabeterminals für jede Eingabequelle, die Sie mit dem Collector-Knoten verwenden möchten, hinzufügen.
Sie können beliebig viele Eingabeterminals zum Collector-Knoten hinzufügen und konfigurieren. Sie können die Eigenschaften eines jeden Eingabeterminals separat konfigurieren, um das Hinzufügen der an den jeweiligen Eingabeterminals empfangenen Nachrichten zur entsprechenden Nachrichtensammlung zu steuern.
Über das Terminal Control können Sie die Ausgabe abgeschlossener Nachrichtensammlungen vom Collector-Knoten auslösen. Konfigurieren Sie die Eigenschaft Ereigniskoordination und legen Sie damit das Verhalten des Collector-Knotens fest, wenn Nachrichten am Terminal Control empfangen werden.
Eine erfolgreich abgeschlossene Nachrichtensammlung kann an das Ausgangsterminal (Out) weitergegeben werden. Ist für die Eigenschaft Objektgruppenablauf ein Wert größer null angegeben, werden alle unvollständigen Nachrichtensammlungen an das Terminal Expire weitergegeben.
Eine neue Transaktion wird erstellt, wenn eine Nachrichtensammlung vollständig ist und an den nächsten Knoten weitergegeben wird. Wenn Ausnahmebedingungen von nachgeordneten Knoten abgefangen werden, wird die Nachrichtensammlung zusammen mit einer Ausnahmeliste an das Terminal Catch auf dem Collector-Knoten geleitet. Wenn das Catch-Terminal nicht an andere Knoten angeschlossen ist, wird die Transaktion zurückgesetzt. Nachrichten in der Nachrichtensammlung werden in der Warteschlange des Collector-Knotens zurückgesetzt. Die Ausnahmeliste wird in das Systemprotokoll geschrieben. Dieser Schritt wird wiederholt bis die Nachrichtensammlung erfolgreich verarbeitet wurde. Zur Vermeidung einer Ausnahmebedingung, durch die die erfolgreiche Weitergabe der Nachrichtensammlung fehlschlägt, müssen Sie sicherstellen, dass Sie das Terminal Catch zur Verarbeitung von Ausnahmebedingungen mit einem Nachrichtenfluss verbunden haben. Zudem müssen Sie sicherstellen, dass Sie ein Verfallszeitlimit für die Weitergabe von unvollständigen Nachrichtensammlungen definieren.
Wenn Sie weitere Instanzen eines Nachrichtenflusses oder mehrere Eingaben in den Collector-Knoten verwenden, können Sie mit den Eigenschaften Korrelationspfad und Korrelationsmuster sicherstellen, dass zusammengehörige Nachrichten der gleichen Nachrichtensammlung hinzugefügt werden. Bei weiteren Instanzen oder mehreren Eingaben in den Collector-Knoten ist die Reihenfolge der Nachrichten in der Nachrichtensammlung unvorhersehbar. Dies gilt auch, wenn Sie WebSphere MQ-Clusterwarteschlangen als Eingaben in den Collector-Knoten verwenden.
Nachdem Sie eine Instanz des Collector-Knotens in einen Nachrichtenfluss eingereiht haben, können Sie den Knoten konfigurieren; siehe Collector-Knoten konfigurieren und Nachrichtenflussknoten konfigurieren. Die Knoteneigenschaften werden in der Eigenschaftenansicht angezeigt. Alle verbindlichen Eigenschaften, für die Sie einen Wert eingeben müssen (d. h. Eigenschaften ohne definierten Standardwert), sind mit einem Sternchen gekennzeichnet.
In der folgenden Tabelle werden die Terminals des Collector-Knotens beschrieben.
Terminal | Beschreibung |
---|---|
Steuerterminal | Das statische Eingangsterminal, das Steuernachrichten annimmt. Alle Nachrichten, die vom Terminal 'Control' empfangen werden, werden als Steuernachrichten behandelt. |
Ausgang | Das Ausgabeterminal, an das die vollständige Nachrichtensammlung weitergeleitet wird, wenn die empfangenen Nachrichten die konfigurierten Bedingungen für die Nachrichtensammlung erfüllen. |
Expire | Das Ausgabeterminal, an das die unvollständige Nachrichtensammlung weitergeleitet wird, wenn die empfangenen Nachrichten die konfigurierten Bedingungen innerhalb des für die Eigenschaft 'Objektgruppenablauf' angegebenen Zeitraumes nicht erfüllen. Wenn Sie keinen Wert für die Eigenschaft 'Objektgruppenablauf' angegeben haben, wird dieses Terminal nicht verwendet. |
Fehlerterminal (Failure) | Das Ausgabeterminal, an das die Nachrichtensammlung geleitet wird, wenn während der Verarbeitung ein Fehler auftritt. |
Catch-Terminal | Das Ausgabeterminal, an das die Nachrichtensammlung geleitet wird, wenn nachgeschaltet eine Ausnahmebedingung ausgegeben und von diesem Knoten aufgefangen wurde. |
Der Collector-Knoten kann über weitere dynamische Eingabeterminals verfügen. Sie können numerische Terminalkennungen für den Collector-Knoten erstellen; der Compute-Knoten unterstützt jedoch keine numerischen Kennungen. Beim Definieren eines angepassten Terminals für den Collector-Knoten müssen Sie daher sicherstellen, dass der Name mit einem alphabetischen Zeichen beginnt.
In den folgenden Tabellen 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 Collector-Knotens beschrieben:
Eigenschaft | O | K | Standardwert | Beschreibung |
---|---|---|---|---|
Knotenname | Nein | Nein | Der Knotentyp, Collector | Der Name des Knotens. |
Kurzbeschreibung | Nein | Nein | Kurze Beschreibung des Knotens. | |
Ausführliche Beschreibung | Nein | Nein | Text, der den Zweck des Knotens im Nachrichtenfluss beschreibt. |
Der Collector-Knoten weist zwei Arten von Basiseigenschaften auf. Sie können in der Tabelle 'Definition der Objektgruppe' in den Grundeinstellungen Eigenschaften für die jeweiligen Eingabeterminals, die Sie zum Collector-Knoten hinzugefügt haben, festlegen. Mit den Eigenschaften in der Tabelle 'Definition der Objektgruppe' werden die Ereignishandler für Nachrichten definiert, die bei den einzelnen Eingabeterminals eingehen. In der nachfolgenden Tabelle werden die Eigenschaften erläutert, die Sie für die jeweiligen dynamischen Eingabeterminals einrichten können.
Eigenschaft | O | K | Standardwert | Beschreibung |
---|---|---|---|---|
Terminal | Ja | Nein | Der Terminalname | Terminal ist keine Eigenschaft des Knotens, sondern eine Bezeichnung zur Angabe des Namens des dynamischen Eingabeterminals. Geben Sie in der Tabelle 'Definition der Objektgruppe' für jedes dynamische Eingabeterminal, das Sie zum Collector-Knoten hinzugefügt haben, Werte für die Ereignishandlereigenschaften ein. |
Menge | Ja | Nein | 1 | Gibt die Anzahl der Nachrichten an, die das Eingabeterminal zum Hinzufügen zu einer Nachrichtensammlung akzeptiert. Der Standardwert ist 1; wenn Sie diesen Standardwert akzeptieren, wird nur eine Nachricht zu einer Sammlung hinzugefügt. Wenn eine zweite Nachricht vom Terminal empfangen wird, wird eine neue Sammlungsinstanz erstellt. Wenn Sie 0 (null) auswählen oder keinen Wert für diese Eigenschaft angeben, ist die Anzahl der akzeptierten Nachrichten nicht beschränkt. In diesem Fall muss der Wert für die Eigenschaft Zeitlimit größer als null sein. |
Timeout | Ja | Nein | 0 | Gibt die maximale Zeit in Sekunden an, die das Eingabeterminal auf Nachrichten wartet. Wenn Sie 0 (null) auswählen, ist das Zeitlimit inaktiviert und die Wartezeit für den Empfang von Nachrichten ist nicht beschränkt. In diesem Fall muss der Wert für die Eigenschaft Menge größer als null sein. |
Korrelationspfad | Nein | Nein | Es werden nur Nachrichten in eine Nachrichtensammlung aufgenommen, die über dieselbe Korrelationszeichenfolge verfügen. Wenn die Nachricht eine andere Korrelationszeichenfolge aufweist, wird sie der nächsten Sammlung in der Warteschlange angeboten.
Wenn die Nachricht von keiner der vorhandenen Sammlungen akzeptiert wird, wird eine neue Sammlung mit der Korrelationszeichenfolge der Nachricht erstellt. Nachrichten werden anhand des Wertes aus dem Korrelationspfad gruppiert. Der Korrelationspfad durch XPath definiert.
Definieren Sie einen eigenen Korrelationspfad unter Verwendung von XPath, oder wählen Sie einen Pfad aus den vordefinierten Pfaden aus:
Wenn Sie einen Wert für Korrelationspfad auswählen, können Sie optional ein Korrelationsmuster konfigurieren. |
|
Korrelationsmuster | Nein | Nein | Diese Eigenschaft gibt ein Muster an, mit dem die Inhalte eines Wertes für den Korrelationspfad abgeglichen werden. Sie müssen die Eigenschaft Korrelationspfad setzen, bevor Sie einen Wert für Korrelationsmuster festlegen. Wenn Sie das Korrelationsmuster definieren, müssen Sie einen Stern * verwenden, dem optional weiterer Text hinzugefügt werden kann. Beispiel: *.dat. Wenn das Korrelationsmuster leer ist, muss der gesamte Text des Korrelationspfads von der eingehenden Nachricht abgeglichen werden. |
In der nachfolgenden Tabelle werden die Basiseigenschaften des Collector-Knotens gezeigt:
Eigenschaft | O | K | Standardwert | Beschreibung | Eigenschaft des Befehls mqsiapplybaroverride |
---|---|---|---|---|---|
Objektgruppenname | Nein | Nein | Diese Eigenschaft gibt den Namen der Nachrichtensammlung an.
|
||
Objektgruppenablauf | Nein | Ja | Zeit in Sekunden, die der
Collector-Knoten auf den Eingang von Nachrichten wartet. Nach Ablauf dieser Zeitspanne läuft eine unvollständige Nachricht ab und wird an das
Ausgabeterminal 'Expire' geleitet. Wenn Sie diesen Wert auf null setzen, wird der Objektgruppenablauf inaktiviert, und der Collector-Knoten wartet unbegrenzte Zeit auf Nachrichten. Legen Sie einen Wert größer als null fest, um sicherzustellen, dass die Nachrichtensammlung auch dann verarbeitet werden kann, wenn nicht alle Nachrichten empfangen werden. Wenn diese Eigenschaft nicht definiert ist, wird eine Warnung ausgegeben. Diese Eigenschaft wird mit der Eigenschaft Objektgruppenablauf im konfigurierbaren Service überschrieben, falls definiert. |
collectionExpiry |
In der folgenden Tabelle werden die erweiterten Eigenschaften des Collector-Knotens beschrieben:
Eigenschaft | O | K | Standardwert | Beschreibung |
---|---|---|---|---|
Permanenzmodus | Nein | Nein | Der Knotentyp, Collector | Mit dieser Eigenschaft wird angegeben, ob Nachrichten permanent in den Warteschlangen des Collector-Knotens gespeichert werden. |
Ereigniskoordination | Ja | Nein | Disabled (Inaktiviert) | Diese Eigenschaft gibt an, wie am Terminal 'Control' empfangene Nachrichten zur Ereigniskoordinationsverarbeitung im Collector-Knoten gehandhabt werden.
|
Konfigurierbarer Service | Nein | Ja | Nicht festgelegt | Diese
Eigenschaft gibt den Namen des konfigurierbaren Collector-Services an, der vom Collector-Knoten verwendet werden soll. Die vom konfigurierbaren Collector-Service festgelegten Eigenschaften überschreiben die funktional entsprechenden Eigenschaften, die im Collector-Knoten festgelegt sind. Weitere Informationen zu den Eigenschaften, die Sie mit diesem konfigurierbaren Service angeben können, finden Sie im Abschnitt Eigenschaften von konfigurierbaren Services. |
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. |