1

请有人证实我的想法。

我有一个编排,它调用同一个 Activity 说 400 次。我正在使用扇出/扇入概念。

await Task.WhenAll(collectionOfTasks);

如果这 400 个活动的总处理时间超过 10 分钟,则它似乎没有完成,并且不会再次启动/继续,除非对编排方法进行另一个调用。

这是正确的吗?如果 10 分钟内没有任何内容在 Orchestration 中运行,Azure Function 是否会关闭?活动功能是否仍在运行无关紧要?

4

1 回答 1

3

请注意,消费 Functions 应用程序上的每个单独的函数执行只能运行 10 分钟,然后应用程序被 Azure 基础结构回收。这对于编排来说有点细微差别,因为它们可以有效地永久运行,因为每次它们await执行活动功能时,执行都会停止,一旦活动完成,执行就会恢复。只要您设计您的编排功能,使其一次运行时间不超过 10 分钟,它就可以有效地永远运行。

您可能会遇到 400 个活动功能执行中的一个(或多个)耗时超过 10 分钟。如果是这种情况,它可能正在回收应用程序,并且在再次调用编排方法之前不会重新启动。

于 2019-01-19T00:28:36.550 回答