в чем разница между assertQueue и отправкой в ​​очередь в RabbitMq - PullRequest
0 голосов
/ 14 мая 2018

Я нашел пример для отправки строки в rabittMq и получения из очереди, но я не совсем уверен насчет этих методов - assertQueue , sendToQueue

send.js

var amqp = require('amqplib/callback_api');

amqp.connect('amqp://localhost', function(err, conn) {
  conn.createChannel(function(err, ch) {

              var q = 'hello';
                var msg = 'Hello World! - '+i;

                ch.assertQueue(q, {durable: false});                    
                ch.sendToQueue(q, new Buffer(msg));
                console.log(" [x] Sent %s", msg);
  });
  setTimeout(function() { conn.close(); process.exit(0) }, 1000);
});

receive.js

var amqp = require('amqplib/callback_api');

amqp.connect('amqp://localhost', function(err, conn) {          //amqp://localhost
  conn.createChannel(function(err, ch) {
    var q = 'hello';

    ch.assertQueue(q, {durable: false});
    console.log(" [*] Waiting for messages in %s. To exit press CTRL+C", q);
    ch.consume(q, function(msg) {
      console.log(" [x] Received %s", msg.content.toString());
    }, {noAck: true});
  });
});

1 Ответ

0 голосов
/ 14 мая 2018

Из вашего примера

assertQueue проверяет очередь "hello", если она не существует, она создаст ее.

sendToQueue поместить сообщение в очередь "hello".

...