首页 > 解决方案 > 使用 Azure 函数处理来自 Azure 服务总线队列的死信消息时确定停止条件

问题描述

我计划使用服务总线触发的 Azure 函数来处理死信消息。这样做时,我将克隆消息并从克隆的消息中删除任何死信属性(如果有的话)。因此,这本质上将是一条带有新标识符的新消息。之后,我会将这个克隆的消息提交到主队列进行处理。

我在这里要解决的边缘情况是,如果我的消息本身已损坏,可以成功传递,但由于某种原因处理失败,该怎么办。因此,消息被传递到接收者的最大次数,然后移动到 DLQ。之后,我的 DLQ Azure 函数将其拾取、克隆消息并将其提交回主队列。现在,这可以无限地继续下去。

目标:

  1. 如何确定此消息从 DLQ 移动到主队列的次数?我的目标是在固定次数后停止向主队列的传递。

  2. 什么是处理此类损坏消息的合适设计。我在想,一旦我能够识别出此类损坏的消息,我会将它们移动到某个表存储中以进行手动检查。

标签: azure-functionsmessage-queueazureservicebusazure-servicebus-queues

解决方案


推荐阅读