【问题标题】:Rabbitmq Blocking Connection to consume messages from RabbitMQ vs Using the Blocking Connection to get a message from RabbitMQRabbitmq 阻塞连接从 RabbitMQ 消费消息与使用阻塞连接从 RabbitMQ 获取消息
【发布时间】:2015-09-23 15:34:38
【问题描述】:

我对使用 rabbitmq's pika 库的两种方法感到很困惑。

第一个是Blocking consume
第二个是Blocking basic_get
有人可以详细解释这些差异吗?

Blocking-consume的区别是不是一直在把消息从队列中取出来,而在basic_get中,我们可以更多的控制什么时候从队列中取出消息?

【问题讨论】:

    标签: python python-2.7 rabbitmq pika


    【解决方案1】:

    是的,你说得对。

    basic_get()

    从 RabbitMQ 的角度来看,这是一个 pull 操作。 您可以随时在代码中检索消息。换句话说,它是一个顺序操作。当您询问时,您会收到一条消息。然后在那之后,客户端它不是“自动”获取新消息。将其视为对 REST API 的常规调用。

    bascic_consume()

    从 RabbitMQ 的角度来看,这是一个 push 操作。 你打开一个连接到服务器的管道并告诉 RabbitMQ “嘿,一旦有新东西到了,就把它发给我”。这是一个非常强大的功能,可以为您提供更高的性能,允许您控制一次可以处理的消息数量等等。

    【讨论】:

    猜你喜欢
    • 2014-03-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-16
    • 1970-01-01
    相关资源
    最近更新 更多