假设我有一个像这样链接的编排函数:
[FunctionName("E1")] //default timeout of 5 minutes
public static async Task<List<string>> Run(
[OrchestrationTrigger] IDurableOrchestrationContext context)
{
var outputs = new List<string>();
outputs.Add(await context.CallActivityAsync<string>("E1_SayHello", "Tokyo")); //takes 5 minutes to complete
outputs.Add(await context.CallActivityAsync<string>("E1_SayHello", "Seattle")); //takes 5 minutes complete
outputs.Add(await context.CallActivityAsync<string>("E1_SayHello_DirectInput", "London")); //takes 5 minutes complete
// should return ["Hello Tokyo!", "Hello Seattle!", "Hello London!"]
return outputs;
}
现在我们有三个函数 假设每个函数需要 5 分钟才能完成(在默认的 Azure 消费计划中),人们说每个函数都有自己的超时时间,所以我们总共应该有大约 15 分钟的时间来完成 (5+5+5) all ,但是顶级功能E1只有5分钟的超时时间。是否会因为所有子功能的总数超过其5的限制而在完成之前超时? 如果 E1 协调器超时,那么如果协调器本身超时,活动或子功能是否停止?