除非我打开函数应用程序,否则 Azure Functions Blob 触发器不会触发
Azure Functions Blob trigger does not fire off unless i open the function app
我将 Azure Functions 设置为 运行 关闭 blob 触发器(因此,当将 blob 添加到容器时,它应该会触发)。在我在门户中打开函数应用程序之前,该函数不会 运行。然后它将拾取添加的任何斑点并像往常一样处理它们。为什么我需要在门户中打开函数应用程序才能启动我的作业?这几乎就像功能应用程序进入睡眠状态,然后在我浏览它时醒来。我怎样才能防止这种情况发生?
这是我的 CRON
{
"bindings": [
{
"name": "myBlob",
"type": "blobTrigger",
"direction": "in",
"path": "automated-sql-export",
"connection": "Conn"
}
],
"disabled": false
}
当函数应用 运行 运行时,主机会自动 receiving/polling 处理我们所有各种触发器类型(队列、事件中心、blob 等)中的新事件。但是,根据您 运行 所在的层级,会出现一些差异。
在我们的动态 SKU 中,我们有一个 Function App 外部的服务,负责监控工作并确保 Function App 在 运行ning需要是。当没有工作要执行时(例如,没有队列消息、没有新的 blob 等),Function App 会进入休眠状态。外部服务有责任确保它在工作到达时被唤醒。
我的 Classic SKUs (Basic/Standard) 此外接显示器不在图片中。 Function App 必须 运行 处于 Always On 模式才能保持活动状态。当您在经典层中创建 Function App 时,此设置应自动配置为开启。
解释了所有这些背景后,如果您 运行 宁愿使用动态 SKU,那么事情应该 "just work"。如果不是,请记录错误 here。如果您 运行 正在使用经典 SKU,请确保已启用 Always On。这是人们 运行 经常遇到的问题。
我将 Azure Functions 设置为 运行 关闭 blob 触发器(因此,当将 blob 添加到容器时,它应该会触发)。在我在门户中打开函数应用程序之前,该函数不会 运行。然后它将拾取添加的任何斑点并像往常一样处理它们。为什么我需要在门户中打开函数应用程序才能启动我的作业?这几乎就像功能应用程序进入睡眠状态,然后在我浏览它时醒来。我怎样才能防止这种情况发生?
这是我的 CRON
{
"bindings": [
{
"name": "myBlob",
"type": "blobTrigger",
"direction": "in",
"path": "automated-sql-export",
"connection": "Conn"
}
],
"disabled": false
}
当函数应用 运行 运行时,主机会自动 receiving/polling 处理我们所有各种触发器类型(队列、事件中心、blob 等)中的新事件。但是,根据您 运行 所在的层级,会出现一些差异。
在我们的动态 SKU 中,我们有一个 Function App 外部的服务,负责监控工作并确保 Function App 在 运行ning需要是。当没有工作要执行时(例如,没有队列消息、没有新的 blob 等),Function App 会进入休眠状态。外部服务有责任确保它在工作到达时被唤醒。
我的 Classic SKUs (Basic/Standard) 此外接显示器不在图片中。 Function App 必须 运行 处于 Always On 模式才能保持活动状态。当您在经典层中创建 Function App 时,此设置应自动配置为开启。
解释了所有这些背景后,如果您 运行 宁愿使用动态 SKU,那么事情应该 "just work"。如果不是,请记录错误 here。如果您 运行 正在使用经典 SKU,请确保已启用 Always On。这是人们 运行 经常遇到的问题。