Freigeben über


Pausieren und Aktivieren einer Orchestrierung

Wenn zahlreiche Geschäftsprozesse mit langer Laufzeit gleichzeitig ausgeführt werden, treten unter Umständen Speicher- und Leistungsprobleme auf. Um solche Probleme zu vermeiden, werden Orchestrierungsinstanzen von der Orchestrierungs-Engine "pausiert" und "reaktiviert".

Pausieren ist ein Vorgang, bei dem der Status einer Orchestrierung in eine SQL Server-Datenbank serialisiert wird. Die Rehydration ist das Gegenteil dieses Prozesses: Deserialisieren deserialisieren deserialisieren des letzten Ausführungszustands einer Orchestrierung aus der Datenbank. Mit dem Pausieren soll die Inanspruchnahme von Systemressourcen minimiert werden, indem man die Anzahl der Orchestrierungen verringert, die gleichzeitig im Speicher instanziiert sein müssen.

Dehydrierung

Die Orchestrierungs-Engine stellt beispielsweise fest, dass sich eine Orchestrierungsinstanz seit relativ langer Zeit im Leerlauf befindet. Es errechnet Schwellenwerte, um festzulegen, wie lange auf die Ausführung verschiedener Aktionen gewartet werden soll. Bei Überschreitung dieser Schwellenwerte wird die Instanz pausiert. Dieser Fall kann unter den folgenden Umständen eintreten:

  • Wenn die Orchestrierung auf den Eingang einer Nachricht wartet, und die Wartezeit den von der Engine festgelegten Schwellenwert überschreitet.

  • Wenn die Orchestrierung auf eine Nachricht "lauscht", wie dies bei Verwendung eines Listen-Shapes der Fall ist, und kein Branch vor einem vom Modul festgelegten Schwellenwert ausgelöst wird. Die einzige Ausnahme ist, wenn das Listen-Shape einen Aktivierungs empfangen enthält.

  • Wenn eine Verzögerung in der Orchestrierung einen von der Engine festgelegten Schwellenwert überschreitet.

    Die Engine pausiert die Instanz, indem sie den Status speichert, und gibt den von der Instanz belegten Speicherplatz frei. Indem es ruhende Orchestrierungsinstanzen pausiert, ermöglicht die Engine auf demselben Computer das gleichzeitige Ausführen zahlreicher Geschäftsprozesse mit langer Laufzeit.

    Es gibt zwölf Eigenschaften, mit denen Sie konfigurieren können, wie das Pausieren in BizTalk Server erfolgt. In den Themen in diesem Abschnitt werden diese Eigenschaften und ihre Standardwerte aufgeführt und beschrieben, und es wird erläutert, wie sich verschiedene Werte auf das Dehydrierungsverhalten auswirken.

Reaktivierung

Die Orchestrierungs-Engine kann durch den Empfang einer Nachricht oder durch Ablauf eines in der Form Verzögerung festgelegten Timeouts die Aktivierung einer Orchestrierungsinstanz auslösen. Dabei wird die gespeicherte Orchestrierungsinstanz in den Arbeitsspeicher geladen, ihr letzter Status wird wiederhergestellt, und sie wird an der Stelle ausgeführt, an der sie unterbrochen wurde. Weitere Informationen zur Verwendung von Shapes in Orchestrierungen finden Sie unter Orchestrierungs-Shapes.

Eine Orchestrierung kann so konfiguriert werden, dass sie in der Lage ist, auf mehr als einem Server ausgeführt zu werden. Nachdem eine Orchestrierungsinstanz pausiert wurde, kann sie auf jedem dieser Server aktiviert werden. Fällt ein Server aus, kann die Engine die Orchestrierung von ihrem vorherigen Status ausgehend auf einem anderen Server weiter ausführen. Die Engine nutzt dieses Feature auch zum Implementieren der Lastenverteilung über mehrere Server.

Nächste Schritte