Azure Functions:我可以对 BlobTriggered 函数进行不同的配置吗?

Posted

技术标签:

【中文标题】Azure Functions:我可以对 BlobTriggered 函数进行不同的配置吗?【英文标题】:Azure Functions: Can I have different configuration for BlobTriggered function? 【发布时间】:2019-04-03 09:33:50 【问题描述】:

我有一个 .Net 项目,其中包含同一个 azure 函数项目中的多个触发器(一个 blob 触发函数和一个队列触发函数)。

我的 blob 触发函数需要与队列触发函数不同的并发。

我知道 blob 触发器在内部使用队列。

https://docs.microsoft.com/en-us/azure/azure-functions/functions-bindings-storage-blob#trigger---poison-blobs

有什么方法可以实现吗?

【问题讨论】:

针对这种情况使用不同的函数应用。 不同并发是什么意思? @Thomas 并发设置,例如 bactchSize 和 newBatchThreshold 【参考方案1】:

就像@Sebastian 所说,恐怕你只能通过将 blobtrigger 放在另一个 Function 应用程序中来实现这一点。

host.json 中的设置调节整个函数应用程序的行为。而且我们不能单独为每个触发器自定义设置。

在您的情况下,队列消息并发设置(bactchSize 和 newBatchThreshold)会影响同时使用消息的所有触发器。

【讨论】:

【参考方案2】:

与其使用blob触发器,不如试试eventgrid触发器:

Reacting to Blob storage events Event Grid trigger for Azure Functions

使用作为“自定义”http 触发器的 eventgrid 触发器,只要在存储帐户的任何容器中添加/删除 blob,就会立即调用您的端点。

【讨论】:

以上是关于Azure Functions:我可以对 BlobTriggered 函数进行不同的配置吗?的主要内容,如果未能解决你的问题,请参考以下文章

Blob 存储与 Azure Functions 的兼容性

Azure Functions - Blob 流动态输入绑定

Azure Functions - Python(Blob 触发器和绑定)

添加 Azure 存储 Blob 容器输入绑定 Azure Functions Java

使用VS code 创建 Azure Functions,从blob触发,解析,发送至Service Bus

Azure Functions:如何在 Azure 存储队列的绑定表达式中使用 POCO?