Очередь Azure Service Bus считывает массовое сообщение, используя nodejs - PullRequest
0 голосов
/ 31 мая 2018

Я хочу получать сообщения массово из очередей служебной шины Azure, используя пакет js azure узла. Теперь я могу получать сообщения, используя set-interval.is есть любой другой способ получить сообщения навалом.

Ответы [ 2 ]

0 голосов
/ 25 июня 2018

Можно получить указанное количество сообщений из очереди ServiceBus оптом.Сообщения могут быть получены из очереди с помощью метода receiveQueueMessage (который поддерживает получение только одного сообщения за раз) в ServiceBusService в пакете Node.js Azure.По умолчанию сообщения будут удаляться из очереди по мере их чтения, однако при получении в режиме peeklock установка необязательного параметра isPeekLock в значение true может предотвратить удаление

Предварительные условия для использования Azure ServiceBus: *Пакет 1005 *

  1. Node.js Azure, который можно установить с помощью команды npm install azure
  2. Переменная среды AZURE_SERVICEBUS_CONNECTION_STRING с информацией, необходимой модулю Azure для подключения кServiceBus очередь

Ниже приведен пример кода для приема 10 сообщений,

//Import the module

 var azure = require('azure');

 //Create ServiceBusService object

 var serviceBusService = azure.createServiceBusService();

 var receivedMessages = [];

 while(i<10){

    serviceBusService.receiveQueueMessage('myqueue', { isPeekLock: true }, 
    function(error, lockedMessage){

        if(!error){
           // Message received and locked    
           receivedMessages.push(lockedMessage)    
        }
    }
 });

 Console.log(receivedMessages);
0 голосов
/ 18 июня 2018

API REST служебной шины в настоящее время не поддерживает получение пакетов, поэтому в этой библиотеке нет допустимой реализации.Частично причина в том, что реализация REST не особенно эффективна, и гораздо лучше использовать AMQP.Если вы ищете что-то с более высокой производительностью, я бы взглянул на эту библиотеку:

https://github.com/noodlefrenzy/node-amqp10

Проблема, связанная с github

Также вы можете попробовать это out.

...