gpt4 book ai didi

azure - 如何在 Azure Function App 中配置队列触发器的队列名称

转载 作者:行者123 更新时间:2023-12-04 01:24:40 24 4
gpt4 key购买 nike

我正在 Azure 中创建一个函数应用,并且想要使用队列触发器。我知道如何在设计时配置队列名称,例如:

[FunctionName("MyTestFunction")]
public static void Run([QueueTrigger("myqueue-items", Connection = "testdelete")]string myQueueItem, TraceWriter log)

但是,我希望能够在配置文件中定义和引用它。我知道 function.json (可能是这个)、host.json 和 local.settings.json 的存在,但我不知道如何在其中设置队列名称并在函数中引用它。

如果我部署在 Visual Studio 中创建的新函数(使用新的 15.3 更新),我可以在部署后的 function.json 文件中看到以下内容(即使我在本地开发时该文件不存在):

  "bindings": [
{
"type": "queueTrigger",
"queueName": "myqueue-items",
"connection": "testdelete",
"name": "myQueueItem"
}

我发现,如果我创建该文件,并将“queueName”更改为与实际函数中的值不匹配的内容,不幸的是它不会覆盖它(我想这太容易了)。

如何在函数 QueueTrigger 属性中引用 function.json 中的绑定(bind)?

大概无论解决方案是什么,我都可以对毒队列处理执行相同的操作?

我想要这样做的原因是因为我需要部署完全相同的函数的多个实例,但将每个实例指向不同的队列(为了绕过最大内存限制)。

谢谢。

最佳答案

您是否不能仅引用队列名称作为应用程序功能的设置(使用 %settingName% 语法)?然后在您部署的每个函数应用中将设置更改为所需的队列名称。

[FunctionName("MyTestFunction")]
public static void Run([QueueTrigger("%MyQueueName%", Connection = "testdelete")]string myQueueItem, TraceWriter log)

并在 local.settings.json 中指定用于本地运行的设置

{
"Values: {
"MyQueueName": "myqueue-items"
}
}

关于azure - 如何在 Azure Function App 中配置队列触发器的队列名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45776319/

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