gpt4 book ai didi

azure - Azure Function App 内部的 Task.Run()

转载 作者:行者123 更新时间:2023-12-03 04:58:17 26 4
gpt4 key购买 nike

我们在消费计划上有一个用于测试目的的 Azure 函数应用程序(计时器触发)。应用程序首先在 SQL Server 上触发一堆存储过程。我们使用Task.Run(),它的内部只是一个在服务器上运行SP 的同步操作。这是我们需要的火并忘记任务,并且来自 SQL 的异常/错误被记录到 SQL Server 内部的表中。这个特定的 Azure 应用程序是一个将我们的 SQL 代理作业(因为我们正在转向 PaaS 数据库)迁移到云的计划。此外,Function App 跨多个数据库触发 SP。因此,每个数据库都有一个 Task.Run。

问题是 SP 的执行可能需要大约 20 分钟才能完成。我发现连接在 19 分钟左右断开。所以我看到 SP 是在凌晨 5:00 启动的,并且在 SP 内部进行了适当的日志记录,它一直持续到凌晨 5:19,然后停止(没有成功日志)。所以我相信 C# 中的 SQLConnection 已被删除。消耗计划默认为5分钟。因此,如果这是一个超时问题,那么为什么我仍然可以继续直到 19 分钟,然后才被删除。我观察这种行为已有几天了。

我无法对上述行为得出可行的解释。

最佳答案

消耗计划中的 Azure 函数的最大超时为 10 分钟:

enter image description here

更改计划以支持更长的超时,或者您可以使用持久函数(适用于长时间运行的任务)。

Durable Functions is an extension of Azure Functions that lets youwrite stateful functions in a serverless compute environment. Theextension lets you define stateful workflows by writing orchestratorfunctions and stateful entities by writing entity functions using theAzure Functions programming model. Behind the scenes, the extensionmanages state, checkpoints, and restarts for you, allowing you tofocus on your business logic.

引用资料:

关于azure - Azure Function App 内部的 Task.Run(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63544048/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com