【发布时间】:2016-07-29 23:10:08
【问题描述】:
我计划通过遵循这两个链接link1link2 来延迟队列中消息的处理。因此,正如链接中所建议的那样。我已经用 x-dead-letter-exchange 和 x-dead-letter-routing-key 参数声明了原始队列。当消息无法被消费者处理或发生ttl或队列长度超过时,它将消息发布到所谓的dead-letter-queue。现在在dead-letter-queue 中设置了类似的参数以及ttl 参数。假设在ttl 超出之后将消息重新发布到原始队列。但问题是它正在丢弃所有消息。
此外,这里有一个问题。如果我将失败的消息从原始队列显式发布到死信队列。然后在 ttl 之后将消息重新发布到原始队列。为什么会这样,我如何使它工作。这样死信队列会将消息重新发布到原始队列而不是丢弃。我正在使用RabbitMQ 3.0.0。
仅供参考,我已经创建了 direct 类型的交换以及路由密钥
【问题讨论】:
标签: rabbitmq amqp rabbitmq-exchange rabbitmqctl