Integrationsentwicklung
Geschrieben vonOssi Galkin Vor über einer Woche aktualisiertTable of contentsLastverteilung mit Unterprozessen
In manchen Fällen ist es notwendig, umfangreiche Operationen in einem Prozess auszuführen, um eine Integration abzuschließen. Sie müssen beispielsweise Daten aus Dateien in einem anderen Format lesen und verarbeiten, etwa CSV-, JSON- oder XML-Dateien. Da diese Operationen keine Abhängigkeiten voneinander haben, entscheiden Sie sich, diese Schritte parallel auszuführen. Wenn die Dateien groß sind, wird der Agent dadurch belastet, was zu einem Absturz des Agenten führen kann. In diesem Fall wäre es eine gute Idee, die Last dieser Operationen mit anderen Agenten zu teilen. Dies kann mithilfe von Remote-Subprozessen erfolgen.
Sie können für jeden der Datenverarbeitungsschritte einen Unterprozess erstellen und diese Unterprozesse dann remote vom Hauptprozess aus aufrufen. Nachdem alle diese Unterprozesse abgeschlossen sind, können Sie die von ihnen generierten Daten im Hauptprozess verwenden. Um dies zu ermöglichen, müssen Sie mehrere Agentengruppen in einer Umgebung haben, da Sie Unterprozesse nicht remote zwischen Umgebungen aufrufen können, sondern nur zwischen Agentengruppen in einer Umgebung. Wenn die Ausführung des Hauptprozesses beginnt, löst der Prozess die Unterprozesse parallel in anderen Agentengruppen aus und wartet, bis diese Unterprozesse abgeschlossen sind, bevor er fortfährt. Auf diese Weise können Sie die schwere Datenarbeit auf andere Agenten übertragen, sodass sich nicht ein Agent um alles kümmern muss.
Es ist zu beachten, dass Remote-Subprozesse über einen Service Bus ausgelöst werden. Das Verschieben großer Datenmengen zwischen Agentengruppen kann daher zu einer gewissen Latenz im Prozess führen. Daher sollten Sie nur die erforderlichen Daten von einem Remote-Subprozess an einen aufrufenden Prozess zurückgeben, um das Risiko einer Latenz im gesamten Prozess zu minimieren.
Der nächste Artikel ist der Beginn des API-EntwicklungskursesEinführung in „Was ist zum Erstellen einer API erforderlich?“
Verwandte ArtikelUnterprozess aufrufenEinführung in den Call-SubprozessEinführung in den Aufruf und die Ausführung von Remote-SubprozessenBewährte Methoden zum Zugriff auf Ressourcen mit Remote-SubprozessenBest Practices zur Vereinfachung von Prozessen mit Unterprozessen