【问题标题】:Should RabbitMQ take this long to setup the connection?RabbitMQ 应该花这么长时间来建立连接吗?
【发布时间】:2015-01-26 19:55:40
【问题描述】:

我正在用 Python 中的 RabbitMQ 尝试一个基本的 hello world 示例,设置一个基本的阻塞连接大约需要 8 秒。这似乎有些过分,但这是我第一次使用 RabbitMQ,所以我的问题是:这正常吗?我可以减少这个时间吗?还是我应该寻找另一种选择?这是我的代码:

import time
import pika

start = time.time()

connection = pika.BlockingConnection(pika.ConnectionParameters(host="localhost"))

end = time.time()

print "Elapsed time: %s" % (end-start)
channel = connection.channel()
channel.queue_declare(queue="hello")
channel.basic_publish(exchange="",
                      routing_key="hello",
                      body="Hello world!")
connection.close()

我的输出是Elapsed time: 8.01042914391

感谢您的帮助!

[编辑] 我注意到每次运行它几乎都需要 8 秒,误差在 0.2% 以内。我不确定这是否意味着什么。

【问题讨论】:

  • 通常 - 它不会。但这确实取决于 RabbitMQ 代理资源的可用情况。如果 RabbitMQ 运行的是 int 流控模式,那么这样的延迟也可以称为“正常”,所以我猜你本来想找出为什么需要这么长时间。但是如果没有平台、版本、资源、日志等额外信息,就很难说。

标签: python rabbitmq


【解决方案1】:

需要配置入站通道、出站通道的通道配置,就像线程池执行器一样。这些线程的默认值为 1,这可能会在某些负载下导致延迟。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多