Azure 数据工厂内的 Azure Function 活动的超时设置有何用途?

问题描述 投票:0回答:1

showing the Azure Function setting inside Azure Data Factory

我尝试了 10 分钟到 7 天的超时设置。它总是在 230 秒后返回超时错误。

我已阅读引用 230 秒超时限制的文档。

我想知道这个超时设置在 230 秒后实际超时时有何用途?

azure azure-functions azure-data-factory
1个回答
0
投票

ADF 超时设置用于允许 ADF 在认为活动失败之前等待指定的时间段。它不会覆盖函数应用程序的执行超时。

此设置配置为确保 ADF 不会无限期地等待可能需要很长时间才能执行的函数。

如果函数执行超过定义的 ADF 超时,即使函数继续在后台运行,管道活动也会失败。

Azure Functions 有自己的超时配置,可以通过在

functionTimeout
中设置
host.json
来管理。

特定计划的功能应用程序超时:

enter image description here

无论定义的函数应用超时设置如何,一旦执行时间达到

230
秒,Azure Function就会超时。

这是由于 Azure Functions 使用的底层基础设施所致,例如 Azure 负载均衡器,其默认空闲超时设置为 4 分钟(Web 请求的响应时间限制)。

如果您的应用程序未在大约 240 秒内返回响应(Windows 应用程序为 230 秒,Linux 应用程序为 240 秒),如 MSDOC 中所述。

如果您的 Azure 函数需要更长的执行时间,即超过

230
秒,请使用 Durable Functions

持久功能异步运行并支持更长时间运行的任务,没有任何超时,请参阅@UtkarshPalSO答案

我创建了一个持久的 Azure 函数并配置了 Azure 数据工厂:

enter image description here

输出:

持久函数创建后台进程,并提供一些与该进程交互的 URL,包括一个用于查询其状态的 URL,请参阅 @UtkarshPalSO 答案

 {
    "id": "badb8e26563c47459511f7baf6a291e3",
    "purgeHistoryDeleteUri": " https://kpfn11.azurewebsites.net/runtime/webhooks/durabletask/instances/badb8e26563c47459511f7baf6a291e3?code=k2T5xoJWvVgyRXXXBtanotcFAzFuvIpYug== ",
    "sendEventPostUri": " https://kpfn11.azurewebsites.net/runtime/webhooks/durabletask/instances/badb8e26563XXXa291e3/raiseEvent/ {eventName}?code=k2T5xoJWvVgyRjLXXXBtanotcFAzFuvIpYug==",
    "statusQueryGetUri": " https://kpfn11.azurewebsites.net/runtime/webhooks/durabletask/instances/badbXXXbaf6a291e3?code=k2T5xoJWvVgyRjLxlyBvlWw1cMXXXuvIpYug== ",
    "terminatePostUri": " https://kpfn11.azurewebsites.net/runtime/webhooks/durabletask/instances/badb8e265XXX1f7baf6a291e3/terminate?reason= {{text}}&code=k2T5xoJWvVgyRjLxXXcMmpu0oyVjhFBtanotcFAzFuvIpYug==",
    "suspendPostUri": " https://kpfn11.azurewebsites.net/runtime/webhooks/durabletask/instances/badbXX11f7baf6a291e3/suspend?reason= {{text}}&code=k2T5xoJWvVgyRjXXpu0oyVjhFBtanotcFAzFuvIpYug==",
    "resumePostUri": " https://kpfn11.azurewebsites.net/runtime/webhooks/durabletask/instances/badb8eXX7baf6a291e3/resume?reason= {{text}}&code=k2T5xoJWvVgyRXXMmpu0oyVjhFBtanotcFAzFuvIpYug==",
    "effectiveIntegrationRuntime": "AutoResolveIntegrationRuntime (East US)",
    "executionDuration": 0,
    "durationInQueue": {
        "integrationRuntimeQueue": 0
    },
    "billingReference": {
        "activityType": "ExternalActivity",
        "billableDuration": [
            {
                "meterType": "AzureIR",
                "duration": 0.016666666666666666,
                "unit": "Hours"
            }
        ]
    }
} 
© www.soinside.com 2019 - 2024. All rights reserved.