【发布时间】:2014-08-30 03:11:35
【问题描述】:
为什么我的 Azure 服务总线队列在未启用时会向死信子队列发送消息?
从一开始我就确保过期的消息不会被移到死信队列中(或者我是这么认为的)。
在 Visual Studio Server Explorer 中,我在队列下看到了这个:
- EnableDeadLetteringOnMessageExpiration: False
但我也看到了这个:
- DeadLetterMessageCount:16
我不能像往常一样把它们拉出来,所以我创建了一个临时服务来处理(摆脱)这些,这就是我能够从 brokeredMessage.Properties 中提取的内容:
- DeadLetterReason: MaxDeliveryCountExceeded
- DeadLetterErrorDescription:10 次传递尝试后无法使用消息。
我希望消息在未完成时留在正常队列中。到目前为止,我已将 MaxDeliveryCount 更改为 1000,但这不是一个真正的解决方案。
我忽略了什么?
更新 在阅读我自己的文本后,我意识到 EnableDeadLetteringOnMessageExpiration 与传递计数无关。 我是否可以选择让我的消息永远留在正常队列中?还是我必须将 MaxDeliveryCount 设置为“足够高”?
【问题讨论】:
标签: azureservicebus azure-servicebus-queues dead-letter