这是我的实现
消费:
GetResponse resp = channel.basicGet(qName, false);
承认:
channel.basicAck(dTag, false);
或
channel.basicNack(dTag, false,true);
我面临的问题是,如果我创建不同的通道对象,则不会发生确认。只有当我从同一个jvm(tomcat或任何其他应用程序服务器)执行这两项操作(消耗,确认)时,我才能实现这一点。
所以如果我的应用程序在集群模式(多应用程序服务器)下运行,我就遇到了麻烦。
任何人都可以帮我如何从不同的机器确认消息被消耗,即使用不同的通道对象.
谢谢!!
任何人都可以帮我如何从不同的机器确认消息被消耗,即使用不同的通道对象.
你不能。
确认必须在同一通道上进行。