我想知道是否有任何方法可以将消息返回到其在队列中的原始位置。例如,假设我们有以下顺序:
A-B-C-D
,其中A
为头,D
为尾。通常,当我们将nack
或reject
与requeue=true
一起使用时,它只是将消息排在当前尾部之后。在这种情况下,当A
重新排队时,新的排序将变为B-C-D-A
。但是,我想知道是否有任何方法可以排队到队列的开头。因此,如果A
被“发送回”,它将被放置在队列的开始位置,并保留在原始位置。
我使用Spring AMQP搜索解决方案。
答案 0 :(得分:1)
您需要将预取(qos)设置为1。否则,任何预取的邮件都会在重新交付A之前传递。
但是,它将影响性能。