如何使用isPeekLock:true从azure服务总线队列释放对获取的消息的锁定

问题描述 投票:0回答:1

在节点中,我正在使用azure库获取azure服务总线队列消息这是我的代码。

const azure = require('azure');
const serviceBusService = azure.createServiceBusService();

serviceBusService.receiveQueueMessage('queueName', { isPeekLock: true }, (error, lockedMessage) => {
    if (error) {
      console.log('Error', error)
    } else {
      console.log('Message', lockedMessage)
    }
  });

我正在获取lockedMessage,但是我不知道如何释放此获取的消息中的锁定,以便其他使用者可以使用该消息并进行进一步处理。

我在天蓝色文档中找不到任何东西。

azure azureservicebus
1个回答
0
投票

您必须使用unlockMessage方法来释放在peekLock期间获取的锁。

从此链接https://docs.microsoft.com/en-us/azure/service-bus-messaging/service-bus-nodejs-how-to-use-queues#how-to-handle-application-crashes-and-unreadable-messages下方引用

“ Service Bus提供的功能可帮助您从错误中正常恢复应用程序或难以处理消息。如果接收方应用程序由于某种原因而无法处理该消息,则可以在接收方应用程序上调用unlockMessage方法。ServiceBusService对象。它将导致服务总线在排队,并使其可以再次被相同的消费方接收应用程序或另一个使用中的应用程序。”

© www.soinside.com 2019 - 2024. All rights reserved.