6

BlockingConnection我对and有点困惑AsyncoreConnection。我想从 Django 应用程序向 RabbitMQ 队列发送一些消息。BlockingConnection使用全局对象可以做到这一点吗?

谢谢你。

4

1 回答 1

8

如pika FAQBlockingConnection中所述,每个线程需要一个对象:

Pika 在代码中没有任何线程概念。如果您想将 Pika 与线程一起使用,请确保每个线程都有一个在该线程中创建的 Pika 连接。跨线程共享一个 Pika 连接是不安全的。

因此,答案取决于您如何部署 Django。如果您在多线程部署中使用 Django,则不能使用全局BlockingConnection; 您需要为每个线程创建一个。如果您不使用多线程,则可以使用全局BlockingConnection对象。

于 2014-07-30T22:54:43.263 回答