声明队列,将GenerateInvoice消息发布到队列并为队列提供多个使用者将在此方案中起作用。
发布到队列的消息不会丢失,如果没有消费者,它们将保留在RMQ上。唯一的办法是确保在发布消息之前声明队列。
Java示例:
channel.queueDeclare(QUEUE_NAME, false, false, false, null);
然后,Publish可以完成:
channel.basicPublish("", QUEUE_NAME, null, message.getBytes());
和消费可以做到:
channel.basicConsume(QUEUE_NAME, true, deliverCallback, consumerTag -> { });