RabbitMQ 已设置,我可以使用示例脚本:
use Net::RabbitMQ;
my $mq = Net::RabbitMQ->new();
$mq->connect("localhost", { user => "guest", password => "guest" });
$mq->channel_open(1);
$mq->publish(1, "queuename", "Hi there!");
$mq->disconnect();
它发布消息(我猜)。我尝试了以下方法来简单地从队列中获取消息,但得到了 404:
my $mq = Net::RabbitMQ->new();
$mq->connect("localhost", { user => "guest", password => "guest" });
$mq->channel_open(1);
print $mq->get(1, "queuename");
最佳答案
错误消息全文为:
basic_get: server channel error 404, message: NOT_FOUND - no queue 'queuename' in vhost '/' ...
您需要使用 auto_delete => 0
创建队列 - 否则当第一个进程终止时它将消失。看一下 queue_declare
方法。
关于perl - 为什么我在使用 Perl 的 RabbitMQ 消费者时会收到 404 错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7585546/