【Azure Function】在Function执行中遇见Timeout错误

问题描述

在Function执行中遇见Timeout错误: Microsoft.Azure.WebJobs.Host.FunctionTimeoutException

/Timeout value of 00:30:00 was exceeded by function
/Functions.TimerTrigger_UdeskContact    
async Microsoft.Azure.WebJobs.Host.Executors.FunctionExecutor.TryHandleTimeoutAsync(Task invokeTask,CancellationToken shutdownToken,Boolean throwOnTimeout,CancellationToken timeoutToken,TimeSpan timeoutInterval,IFunctionInstance instance,Action onTimeout)
D:\a\_work\1\s\src\Microsoft.Azure.WebJobs.Host\Executors\FunctionExecutor.cs

 

有什么办法可以缓解执行时间过长的问题吗?

 

问题解答

在Function的设计中,有一个参数可以设置Funciton的执行时间,参数名为 functionTimeout ,配置在Function的 host.json 文件中。

指示所有函数执行的超时持续时间。它遵循时间跨度字符串格式。

所以除了可以修改functionTimeout的值之外,对于长时间执行的Function,更推荐使用持久函数(Durable Functions: https://docs.azure.cn/zh-cn/azure-functions/durable/durable-functions-types-features-overview

 

参考资料:

functionTimeout in host.jsonhttps://learn.microsoft.com/en-us/azure/azure-functions/functions-host-json#functiontimeout

 

posted @ 2024-01-17 22:29  路边两盏灯  阅读(18)  评论(0编辑  收藏  举报