如何在NodeJS中将服务总线消息发送到死信队列?

时间:2019-09-09 08:31:25

标签: node.js servicebus dead-letter

如何将消息发送到死信队列?

serviceBusService.receiveQueueMessage(MESSAGE_QUEUE, {isPeekLock: true}, (error, message) => {
    ...... // want to put message to deadletter queue if there is exception
    serviceBusService.deleteMessage(message, error => {
    });
});

2 个答案:

答案 0 :(得分:1)

通常,您希望依靠系统来决定何时将消息移至DLQ并尽可能让消息传递引擎负责(而不是在DLQ上显式放置消息)。通过以下文档提供了这种情况下的指导:How to handle application crashes and unreadable messages

答案 1 :(得分:1)

好像您正在使用依赖于HTTP REST API的旧版azure-sb包。如果改用较新的@azure/service-bus程序包,该程序包使用更快的AMQP实现,则收到的消息上有一个deadletter()方法,可用于将消息发送到死信队列。