我想从队列中接收消息并立即使它们出队,事实上我想模仿 rabbitMQ 管理控制台的行为,它可以接收消息并重新排队。
所以我的问题是如何做到这一点?起初我试图克隆消息并重新发送它们,但似乎 rabbitTemplate 无法将消息直接发送到队列并将它们发送到交换不是一个选项,因为它可能是多个队列将再次收到消息。
然后我开始考虑我可以接收一条消息,然后以某种方式 NACK 它,以便它最终回到队列中。唯一的问题是我应该怎么做?
最佳答案
我想你可以用 basicReject
来实现:
public class MyListener implements ChannelAwareMessageListener {
public void onMessage(Message message, Channel channel) throws Exception {
//Do something with message
channel.basicReject(message.getMessageProperties().getDeliveryTag(), true);
}
}
关于spring - RabbitTemplate 接收并重新排队,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25876178/