WebSphere Message Broker Version 8.0.0.5 Betriebssysteme: AIX, HP-Itanium, Linux, Solaris, Windows, z/OS

Sehen Sie sich die Informationen zur aktuellen Produktversion im IBM Integration Bus Version 9.0 an.

Collector-Knoten

Mit dem Collector-Knoten können Sie Nachrichtensammlungen erstellen. Dabei gelten die im Knoten konfigurierten Regeln.

Dieses Thema ist in folgende Abschnitte eingeteilt:

Zweck

Mit dem Collector-Knoten können Sie eine Nachrichtensammlung aus einer oder mehreren Quellen auf Basis von konfigurierbaren Kriterien erstellen. Beispielsweise müssen Sie Informationen aus drei verschiedenen Quellen extrahieren, kombinieren und umsetzen. Die Nachrichten aus den verschiedenen Quellen werden zu unterschiedlichen Zeiten und in unbekannter Reihenfolge an den Eingabeterminals empfangen. Datensammlungen werden durch Konfiguration eines Ereignishandlers für die einzelnen Eingabeterminals definiert. Jeder Ereignishandler steuert die Annahme einer Nachricht in einer Datensammlung unter Berücksichtigung der folgenden Eigenschaften:
  • Anzahl der Nachrichten
  • Nachrichten für einen festgelegten Zeitraum erfassen
  • Inhalte eines Korrelationspfads abgleichen
  • Inhalte mit einem Korrelationsmuster abgleichen
Mithilfe der Korrelationseigenschaften können Datensammlungen entsprechend dem Inhalt der Nachrichten erstellt werden. Der Inhalt wird unter Verwendung eines XPath-Ausdrucks angegeben. Der Collector-Knoten sorgt dafür, dass jede Datensammlung bei jeder Eingabe eine identische Korrelationszeichenfolge enthält. Weitere Informationen zur Abfragesyntax von XPath 1.0 finden Sie im Abschnitt W3C XPath 1.0 Spezifikation.

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:

Symbol für Collector-Knoten

Verwendung dieses Knotens in einem Nachrichtenfluss

Das folgende Beispiel zeigt, wie dieser Knoten verwendet wird:

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.

Mit dem Collector-Knoten können Sie Nachrichten aus unterschiedlichen Quellen in Nachrichtensammlungen auf Basis einer oder mehrerer der folgenden Regeln gruppieren. Eine Nachrichtensammlung kann nur von folgenden Knoten verarbeitet werden:
  • Compute
  • JavaCompute
  • .NETCompute
  • PHPCompute
Wenn Sie versuchen, eine Nachrichtensammlung mit einem Knoten zu verarbeiten, der keine Nachrichtensammlungen unterstützt, werden möglicherweise Fehler generiert.

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.

Anmerkung: Alle Ausnahmebedingungen, die nach dem Collector-Knoten auftreten, werden an das Catch-Terminal weitergeleitet. Eine vorgelagerte Verarbeitung von Ausnahmebedingungen findet nicht statt, weil die Vervollständigung der Nachrichtensammlung im Collector-Knoten den Zeitpunkt für den Start der Transaktion darstellt. Dieses Verhalten entspricht dem des AggregateReply-Knotens. Verbinden Sie keinen Throw-Knoten mit dem Catch-Terminal des Collector-Knotens, weil die Steuerung an dasselbe Catch-Terminal zurückgegeben wird.

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.

Collector-Knoten konfigurieren

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.

Terminals und Eigenschaften

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:
  • $LocalEnvironment/Wildcard/WildcardMatch
  • $Root/MQMD/CorrelId
  • $LocalEnvironment/FileInput/Name
  • $Root/JMSTransport/Transport_Folders/Header_Values/JMSCorrelationID

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.
  • Wenn die Eigenschaft das Platzhalterzeichen * enthält, wird das Platzhalterzeichen durch die Korrelationszeichenfolge aus dem entsprechenden Ereignishandler ersetzt.
  • Wenn Sie diese Eigenschaft leer lassen oder * eingeben und kein Wert für die Korrelationszeichenfolge angegeben ist, enthält der Objektgruppenname eine leere Zeichenfolge.
 
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.
  • Wenn Sie den Standardwert übernehmen (Inaktiviert), werden Nachrichten an das Terminal 'Control' ignoriert, und Objektgruppen werden weitergeleitet, wenn sie vollständig sind.
  • Wenn Sie Alle vollständigen Objektgruppen auswählen, werden vollständige Nachrichtensammlungen in eine WebSphere MQ-Warteschlange eingereiht. Wenn eine Nachricht am Terminal 'Control' empfangen wird, werden alle vollständigen Nachrichtensammlungen in der WebSphere MQ-Warteschlange an das Terminal 'Out' weitergeleitet.
  • Wenn Sie Erste vollständige Objektgruppe auswählen, werden vollständige Nachrichtensammlungen in eine WebSphere MQ-Warteschlange eingereiht. Wenn eine Nachricht am Terminal 'Control' empfangen wird, wird die erste vollständige Nachrichtensammlung in der WebSphere MQ-Warteschlange an das Terminal 'Out' weitergeleitet. Die Objektgruppen werden in der Reihenfolge, in der sie komplettiert werden, weitergeleitet. Wenn die WebSphere MQ-Nachrichtenschlange bei Empfang einer Nachricht am Terminal 'Control' leer ist, wird die Nachrichtensammlung, die als nächstes vollständig ist, sofort an das Terminal 'Out' weitergeleitet.
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.

Die Überwachungseigenschaften des Knotens werden in der folgenden Tabelle beschrieben.
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.

Sie können Überwachungseigenschaften nicht zur Konfiguration von Transaktionsereignissen auf folgenden Knoten verwenden: Verwenden Sie stattdessen ein Überwachungsprofil (siehe Überwachungsereignisquellen mithilfe eines Überwachungsprofils konfigurieren).
Bemerkungen | Marken | Downloads | Bibliothek | Support | Feedback

Copyright IBM Corporation 1999, 2014Copyright IBM Corporation 1999, 2014.

        
        Letzte Aktualisierung:
        
        Letzte Aktualisierung: 2015-02-28 16:20:16


ReferenzthemaReferenzthema | Version 8.0.0.5 | ac37820_