我有一个运行时间非常长的进程,该进程使用面向 v2.0 的 Azure Function App 托管(尽管不建议用于长时间运行的进程)。早些时候它的目标是 v1.0 运行时,所以我没有遇到任何函数超时问题。
但是现在将运行时更新为目标 v2.0 后,我无法找到任何方法将函数超时设置为无限,就像 v1.0 的情况一样。
有人可以帮我解决这个问题吗?
最佳答案
从您的评论来看,目前您无法选择分解为较小的函数或使用函数以外的其他内容。在这种情况下,据我所知,只要您准备好使用“应用程序服务计划”,您仍然可以使用 v2.0 来完成此操作。
10分钟的最长限制仅适用于“消费计划”。
事实上,文档明确表明,如果您拥有连续或接近连续运行的功能,那么应用服务计划也可能更具成本效益。
您可以使用“始终开启”设置。请在此处的 Microsoft 文档上阅读相关内容。
Azure Functions scale and hosting
此外,文档明确指出应用服务计划的超时默认值为 30 分钟,但可以手动设置为无限制。
Changes in features and functionality
更新
根据我们在评论中的讨论,由于 null 值不像 1.x 版本那样适合您,请尝试完全删除“functionTimeout”设置。
我遇到了 2 个不同的 SO 帖子,提到了类似的内容,并且 Microsoft 文档文本也说没有真正的限制。以下是我遇到的 SO 帖子的链接:
关于azure - 如何为Azure Function应用程序v2.0设置无限超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52954059/