在 Azure 存储中使用队列
Posted
技术标签:
【中文标题】在 Azure 存储中使用队列【英文标题】:Using Queue in Azure Storage 【发布时间】:2021-05-06 10:12:06 【问题描述】:我正在尝试解决 1 个在 .NET 中使用 AzureStorage.Queue 的问题。
首先,我有 2 个项目,1 个 Web API 项目,1 个 WebJob 项目。 (全部写在.NET Core 2.2)
我的项目API在创建新产品时,会将产品的1个消息存储ID插入Azure中的消息队列(队列名称:产品)
同时在我的项目 Web Job 中,我有 1 个函数使用 [QueueTrigger["product"]] 来监听新消息插入我的“产品”队列时。但我不知道为什么在将消息插入“产品”队列后,我的消息会自动删除并插入另一个名为“产品毒药”的队列?
我在 2 Project 中使用与 Azure 存储相同的连接字符串。我尝试使用不同的连接字符串,但结果是一样的。
感谢您对我的支持。
【问题讨论】:
阅读这里关于错误处理和毒队列blog.tech-fellow.net/2019/02/06/… @silent 感谢您对我的支持。 【参考方案1】:您的队列触发函数使用了您的 API 项目生成的消息,并且该函数似乎没有以正确的格式使用它。
这里有一篇文章讲述了为什么会生成毒队列:Poison messages
当队列触发函数失败时,Azure Functions 会重试 对给定的队列消息最多运行五次,包括 第一次尝试。如果所有五次尝试都失败,函数运行时会添加一个 向名为 -poison 的队列发送消息。
【讨论】:
以上是关于在 Azure 存储中使用队列的主要内容,如果未能解决你的问题,请参考以下文章