暂时停止使用RabbitMQ消息并稍后恢复

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了暂时停止使用RabbitMQ消息并稍后恢复相关的知识,希望对你有一定的参考价值。

我使用Java的rabbitmq-client(https://mvnrepository.com/artifact/com.rabbitmq/amqp-client),我需要实现以下场景:

  • 在接收Rabbit消息时,如果我怀疑所有等待数据都不适合内存,我可能需要暂停特定队列中的Rabbitmq消耗。
  • 处理完一些消息后,我需要再次打开消费以获取以下消息集。
  • 根据需要重复。

使用amqp-client Java库实现从RabbitMQ队列中监听暂停/恢复的最佳方法是什么?

答案

您没有提到您使用哪种方法来使用消息,因此我假设您使用basicConsume订阅队列中的消息。

正如that document所提到的,你可以使用basicCancel停止从队列中消费。然后,当您希望重新开始时,您将使用basicConsume

请务必使用basicQos设置合理的预取计数。

以上是关于暂时停止使用RabbitMQ消息并稍后恢复的主要内容,如果未能解决你的问题,请参考以下文章

恢复后停止重新创建片段?

优雅地停止 ecs 容器

java rabbitmq 客户端在失去连接后怎么自动恢复

流分析恢复行为

WPF DataGrid - 如何暂停数据绑定中的 UI 更新并稍后进行批量更新

Flink 与rabbitmq集成 并开启checkpoint