【问题标题】:rabbitmq basic.ack , on a different channel objectrabbitmq basic.ack ,在不同的通道对象上
【发布时间】:2017-01-11 06:44:04
【问题描述】:

这是我的实现

消费:

GetResponse resp = channel.basicGet(qName, false);

确认:

channel.basicAck(dTag, false);

channel.basicNack(dTag, false,true);

我面临的问题是,如果我创建不同的通道对象,则不会发生确认。 而且我只能在同一个 jvm(tomcat 或任何其他应用服务器)同时执行这两个操作(消费、确认)时才能实现。

所以如果我的应用程序在集群模式下运行(多个应用程序服务器),我就有麻烦了。

谁能帮助我如何从另一台机器确认消息已被消费,即使用不同的通道对象。

谢谢!!

【问题讨论】:

  • Acking 必须发生在同一个频道上。您无法确认来自另一台机器的消息。

标签: java tomcat rabbitmq mq


【解决方案1】:

谁能帮助我如何从另一台机器确认消息已被消费,即使用不同的通道对象。

你不能。

确认必须发生在同一个频道上。

【讨论】:

  • 首先感谢您的帮助。我有点绕圈子……我在 Rabbit 上找到了你的网站,发现你是这方面的专家。我可以问你一个关于兔子的问题吗?这里是stackoverflow.com/questions/41610842/…
  • 我评论了您其他问题中的现有答案。你的设置听起来很合适,已经
猜你喜欢
  • 2021-09-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-03-10
  • 1970-01-01
相关资源
最近更新 更多