RabbitMQ重新交付拒绝的重新查询消息的回退?

RabbitMQ重新交付拒绝的重新查询消息的回退?,rabbitmq,Rabbitmq,我有一个简单的服务,它订阅来自RabbitMQ的消息并将其写入数据存储。有时此数据存储在短时间内不可用(有时几秒钟,有时几分钟)。如果发生这种情况,我们将对失败消息执行basic.reject,并将requeue设置为true。虽然这样做有效,但信息似乎会立即重新传递。我想让拉比先生优雅地退后。例如,首先尝试“立即”重新传递,然后在2、3、5、8、13秒后等。这是否可能,如果可能,如何实现?除了Louis F.发布的评论之外,请查看延迟消息交换插件 您可以使用延迟消息交换类型设置死信交换,无需进

我有一个简单的服务,它订阅来自RabbitMQ的消息并将其写入数据存储。有时此数据存储在短时间内不可用(有时几秒钟,有时几分钟)。如果发生这种情况,我们将对失败消息执行
basic.reject
,并将
requeue
设置为
true
。虽然这样做有效,但信息似乎会立即重新传递。我想让拉比先生优雅地退后。例如,首先尝试“立即”重新传递,然后在2、3、5、8、13秒后等。这是否可能,如果可能,如何实现?

除了Louis F.发布的评论之外,请查看延迟消息交换插件


您可以使用延迟消息交换类型设置死信交换,无需进行大量配置和使用类似的TTL即可轻松完成此操作。

您可以在以下位置进行检查:。基本上,这个想法是为每条消息设置一个ttl@路易斯福。你在这里删除了你的帖子为什么?谢谢,看起来比我使用的DLX+TTL黑客更干净。