rabbitmq何时使用基本拒绝超过基本nack?

时间:2017-04-14 06:52:19

标签: rabbitmq

Basic nack提供了返回一条或多条消息的否定确认的工具。

基本拒绝具有仅对一条消息返回否定确认的功能。

我们是否有任何需要基本拒绝的用例?

2 个答案:

答案 0 :(得分:2)

使用rabbitmq,你总是可以nack拒绝。从逻辑上讲,没有明确需要使用reject,因为nack可以做任何事情reject。正如你所说,这两个都适用于一条消息,但nack也适用于多条消息。

同样nack由rabbitmq引入(因此它是一个扩展名),并且不属于amqp 0.9.1规范。

答案 1 :(得分:0)

@cantSleepNow 的回答是正确的,我还想再添加一个不同之处,那就是它们的默认行为。

默认情况下,nack 会将消息放回队列中以供以后处理。您可以使用 nack 将设置更改为不重新排队。

使用 reject,默认情况下,消息不会被 RabbitMQ 重新排队,而是将消息完全从队列中删除。