如何使用RabbitMq直接回复队列扩展
How to use RabbitMq Direct reply-to queue extension
我创建了一个客户机和一个服务器。我如何使用RabbitMq直接回复队列扩展?
客户机代码AMQPExchange * ex = amqp.createExchange("");
AMQPQueue * ReplyToQueue = amqp.createQueue("amq.rabbitmq.reply-to");
ReplyToQueue->Consume(AMQP_NOACK);
在上面的代码中,Consume给出以下异常
server error 404, message 'NOT_FOUND - no queue 'amq.rabbitmq.reply-to' in vhost '/'' class=60 method=20
我遵循直接回复rabbitmq
我想说你错过了打电话
ReplyToQueue.Declare()
声明队列
编辑
我添加了oldsound
评论,因为我的答案不正确:
不能用amq来命名队列。前缀,但回复是规则的例外,参见:rabbitmq.com/direct-reply-to.html和https://github.com/rabbitmq/rabbitmq-server/blob/master/src/rabbit_channel.erl#L1264
"不需要先声明这个"队列",尽管客户端如果它愿意,可以这样做。"这是回复队列文档-
根据注释,错误信息NOT_FOUND - no queue 'amq.rabbitmq.reply-to' in vhost '/'
很可能意味着你正在连接的RabbitMQ实例太旧,不支持"直接回复"扩展。它是在RabbitMQ 3.4.0中引入的;
相关文章:
- boost::进程间消息队列引发错误
- 如果我只是不访问queue_front节点的子节点,而是将它们推到队列中呢?还是BFS吗
- Android NDK传感器向事件队列报告奇怪的间隔
- C++优先级队列,按对象的唯一指针的特定方法升序排列
- 按对象的特定方法按升序排列的C++优先级队列
- 使用2个键的cpp-stl::优先级队列排序不正确
- 我是否需要在下一次转移时将所有权*转移回转移队列
- 在一个读写器队列中,我可以用volatile替换原子吗
- 为什么我的多线程作业队列崩溃
- 尝试将lambda函数放在队列中时出现一般分配器错误(可能是与unique_ptr有关的错误)
- 使用"Task"函数指针队列定义作业管理器
- 在c++队列中使用pop和visit实现线程安全
- 为什么我需要C++中不同的排序格式来对这个USACO代码上的数组和优先级队列进行排序
- 打印优先级队列
- 共享队列的线程安全
- 带自定义比较器的最小优先级队列
- 在 Vulkan Qt 中获取队列系列
- 堆栈和队列是否像C++中的数组一样传递?
- 在C++中创建队列 - 什么是 malloc 错误?
- 如何使用RabbitMq直接回复队列扩展