Freigeben über


Sequenzielle Konvois

In einem sequenziellen Konvoi können mehrere einzelne Nachrichten zusammengefasst werden, um ein gewünschtes Ergebnis zu erzielen. Ein sequenzieller Konvoi besteht aus verwandten Nachrichten mit vordefinierter Reihenfolge. Die Nachrichten müssen zwar nicht übereinstimmen, jedoch müssen sie von BizTalk Server in sequenzieller Reihenfolge empfangen werden.

In diesem Beispiel empfängt ein Onlineeinzelhändler im Verlauf eines Tages neue Bestellungen von Direktkunden und Händlern. Alle Bestellungen, die vor 14:00 Uhr empfangen wurden, müssen in einem einzigen Batch an das Lager weitergeleitet werden. Dabei muss die Reihenfolge, in der die Bestellungen empfangen wurden, erhalten bleiben. So erhalten früher empfangene Bestellungen eine höhere Priorität, wenn Artikel vergriffen sind. Dieser Batch mit Bestellungen wird erstellt, indem alle Bestellungen des Tages in einer einzigen Datei mit Stapelkopfzeileninformationen zusammengestellt werden. Um 14:00 Uhr werden alle Bestellungen des Tages zur Verarbeitung an das Lager gesendet. Alle nach 14:00 Uhr empfangenen Bestellungen werden in einem neuen Batch zusammengestellt, der am nächsten Tag verarbeitet wird.

Das oben beschriebene Szenario ist ein Beispiel eines Geschäftsprozesses, der die Verarbeitung eingehender Nachrichten mit sequenziellen Konvois erfordert. Laut Geschäftsanforderungen müssen alle Bestellungen, die an einem bestimmten Tag vor 14:00 Uhr empfangen wurden, in einem Batch zusammengestellt werden. Daher muss die erste empfangene Nachricht eine neue Orchestrierungsinstanz starten und einen Korrelationssatz initialisieren. Danach werden alle weiteren Bestellungen dieses Nachrichtentyps zur bereits ausgeführten Orchestrierungsinstanz weitergeleitet. Um dies zu erreichen, positionieren Sie ein Listen-Shape (das eine Empfangs - und eine Verzögerungsform enthält) in einer Schleifenform . Bei Erreichen der Verzögerung wird die Schleife beendet. Dadurch wird der Empfang einer unbekannten Anzahl von Bestellungen im gleichen Geschäftsprozess ermöglicht.

Implementieren von sequenziellen Konvois

Sie können sequenzielle Konvois mithilfe des Messaging-Entwurfsmusters "Sequenziell korrelierte Empfangsvorgänge" in BizTalk Server implementieren. Sequenzielle, korrelierte Empfänge sind Empfänge, die mit früher empfangenen Nachrichten korreliert werden.

In Fällen, in denen die Korrelationssätze für Empfänge durch andere Empfänge initialisiert werden, wird eine Konvoiverarbeitung ausgeführt.

Für Empfänge, die Konvoiverarbeitung erfordern, gelten folgende Einschränkungen:

  • Die Korrelationssätze, die einen sequenziellen Konvoisatz für einen bestimmten Empfang bilden, müssen durch einen früheren Empfang initialisiert werden.

  • Der Port eines Empfangs, der die Verarbeitung mit sequenziellen Konvois erfordert, muss mit dem Port des Empfangs übereinstimmen, durch den der Konvoisatz initialisiert wurde. Portübergreifende Konvois werden nicht unterstützt.

  • Die Nachrichtentypen eines Empfangs, für den Konvoiverarbeitung erforderlich ist, müssen mit dem Nachrichtentyp des Empfangs übereinstimmen, mit dem der Konvoisatz initialisiert wurde, es sei denn, die Empfangsanweisung wird auf einem geordneten Übermittlungsport ausgeführt.

  • Sämtliche Empfänge eines sequenziellen Konvois müssen alle Korrelationssätze befolgen, die vom initialisierenden Empfang initialisiert bzw. befolgt werden, es sei denn, sie werden auf einem geordneten Übermittlungsport ausgeführt.

  • Wenn ein sequenzieller Konvoi durch eine Anweisung zum Aktivieren des Empfangs initialisiert wird, kann der aktivierte Empfang nicht über einen Filterausdruck verfügen, es sei denn, er wird auf einem geordneten Übermittlungsport ausgeführt.

  • Wenn ein sequenzieller Konvoi durch eine Anweisung zum Aktivieren des Empfangs initialisiert wird, dürfen sich die nachfolgenden Empfänge nicht innerhalb einer geschachtelten Orchestrierung befinden.

    Ein Beispiel für die Implementierung sequenzieller Konvoi finden Sie unter Aggregator (BizTalk Server Beispiel).

Weitere Informationen

Arbeiten mit Konvoiszenarios
Parallele Konvois