Pika - Rabbitmq,使用 Basic.get 从队列中消费单条消息
Pika - Rabbitmq, using Basic.get to cosume single message from queue
我正在使用 here 所示的方法,如下所示:
while method_frame is None:
method_frame, header_frame, method_frame= channel.basic.get("test_queue)
看起来这种轮询不是很有效,因为如果队列为空,基本 get 也会工作,并带来空消息。
我需要一种只接收单个消息的逻辑,只有当我有机会处理它时,这就是我选择 basic.get
而不是 basic.consume
的原因。
有没有人想通过使用一些鼠兔的库或其他机制来进行更有效的轮询?
尝试将 basic.consume(ack=true) 与 basic.qos(prefetch_count=1) 结合使用。
您需要了解如何使用您的特定库来做到这一点
我正在使用 here 所示的方法,如下所示:
while method_frame is None:
method_frame, header_frame, method_frame= channel.basic.get("test_queue)
看起来这种轮询不是很有效,因为如果队列为空,基本 get 也会工作,并带来空消息。
我需要一种只接收单个消息的逻辑,只有当我有机会处理它时,这就是我选择 basic.get
而不是 basic.consume
的原因。
有没有人想通过使用一些鼠兔的库或其他机制来进行更有效的轮询?
尝试将 basic.consume(ack=true) 与 basic.qos(prefetch_count=1) 结合使用。
您需要了解如何使用您的特定库来做到这一点