消耗计划的Azure功能超时

don*_*ote 18 azure azure-functions

有没有办法更改在消费计划下运行的Azure功能的当前5分钟超时限制?

对于某些数据分析计算,5分钟还不够.

使用webjobs的替代方法不允许并行执行该功能.

Man*_*ddy 24

(其他答案有点混乱,所以写而不是编辑很多)

Azure功能现在可以使用消费计划最多运行10分钟:

注意消耗计划上的功能的默认超时为5分钟.通过更改host.json中的属性functionTimeout,可以将函数应用程序的值增加到10分钟.

资料来源:https://docs.microsoft.com/en-us/azure/azure-functions/functions-scale#consumption-plan

// Value indicating the timeout duration for all functions.
// In Dynamic SKUs, the valid range is from 1 second to 10 minutes and the default value is 5 minutes.
// In Paid SKUs there is no limit and the default value is null (indicating no timeout).

// Set functionTimeout to 10 minutes
{
    "functionTimeout": "00:10:00"
}
Run Code Online (Sandbox Code Playgroud)

资料来源:https://github.com/Azure/azure-webjobs-sdk-script/wiki/host.json


Thi*_*dio 6

目前,消费计划无法运行超过5分钟的功能.您可以在此处查看团队的答案:

我们使用动态计划在5分钟超时的原因是因为在动态计划下,托管您的功能的VM将在最后一次触发器触发后大约5分钟关闭.像我们今天所做的那样执行超时是一种提供一致的日志记录体验的方法,它解释了函数停止运行的原因.在此之前,您会看到函数在调用中间消失而没有任何指示原因.我们正在评估这方面的改进,并在我们有更具体的细节时进行更新.

无法分解为较小块的长时间运行的功能将遇到当前在Dynamic计划中运行的问题.但是,通常有一些解决方案可以将单个长时间运行的功能分解为更小,更快的功能.例如,如果你有一个函数在其他地方启动长操作,然后轮询完成,你可以从该操作获得'operationId',然后将它放入Service Bus预定消息(或者甚至在带有不可见性超时),并有第二个'CheckStatus'函数读取这些消息和民意调查完成

https://github.com/Azure/azure-webjobs-sdk-script/issues/18

还有https://github.com/Azure/Azure-Functions/issues/75

UPDATE

Azure功能现在可以使用消费计划运行长达10分钟:https: //docs.microsoft.com/en-us/azure/azure-functions/functions-scale

  • 尽管将超时设置为 10 分钟,但我的函数还是在 2 分钟内超时 (3认同)