我同时拥有使用 channel.basicConsume()
的 Java 和 Python 客户端。在某些时候,我想在不停止整个程序的情况下停止那些消费者。
在带有 Pika 的 Python 中,我已经放置了 channel.stop_consuming()
调用,但那些生成的错误被我忽略了。似乎有效
在 Java 中,我不确定如何执行此操作,因为 stop_consume() 似乎不可用。
我看到的所有文档都谈到了创建消费者的所有方法,但我似乎找不到任何说明如何阻止它们的内容。
解决这个问题的最佳方法是什么?
最佳答案
对应basic_consume
是basic_cancel
. basic_cancel
将在 rabbitmq 完成取消时触发提供的 on_basic_cancel_ok
回调函数。为可能仍会收到一些消息的短时间做好准备。
参见:Pika Channel
关于java - 如何停止使用 Java 和 Python 客户端在 RabbitMQ 中消费?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15555636/