BizTalk 编排中并行形状的异步处理

Asynchronous processing of parallel shapes in BizTalk orchestration

有什么方法可以使 BizTalk 编排中的各种并行形状以异步方式进行处理?更具体地说,如果任何一个平行形状在执行时失败,它不应该影响其他平行形状的执行。

如您所见,BizTalk Orchestration 中的平行形状并不是真正相互独立的。它将尝试执行第一个并行操作中的步骤,并且仅在等待对当前并行操作的响应时才开始其他并行操作之一。任何失败或终止都可能导致意外结果。

How to Configure the Parallel Actions Shape

Caution If you place a Terminate shape inside a Parallel Actions shape, and the branch with the Terminate on it is run, the instance completes immediately, regardless of whether other branches have finished running. Depending on your design, results might be unpredictable in this case.

你的选择是

  1. 在平行形状的每个分支内都有一个范围,因此如果出现故障,它会被捕获但不会停止其他分支的执行。 注意:如果平行形状内的步骤的执行时间很短,则可能只需完全删除平行形状并让一些范围相互跟随就可以了。

  2. 具有 Start Orchestration 形状,调用其他 Orchestrations 进行处理。您启动的 Orchestration 中的失败不会停止您启动它的 Orchestration 中的执行。