【问题标题】:Consuming a rabbitmq message queue with multiple threads (Python Kombu)使用具有多个线程的rabbitmq消息队列(Python Kombu)
【发布时间】:2011-06-28 08:56:47
【问题描述】:

我有一个带有单个队列的 RabbitMQ 交换。我希望创建一个运行多个线程并尽快通过该队列工作的守护进程。

“工作”涉及与外部服务的通信,因此每个消费者内部都会发生相当多的阻塞。因此,我希望多个线程都处理来自同一个队列的消息。

我可以通过使用主线程上的队列,然后将传入的工作分配给其他线程池来实现这一点,但是有没有办法启动多个消费者,每个消费者都在自己的线程上下文中?

【问题讨论】:

    标签: python multithreading rabbitmq kombu


    【解决方案1】:

    查看celery - 它旨在对来自 AMPQ 代理的任务进行排队和处理(但也适用于其他排队后端)。它处理多进程或多线程并发,并使得创建和使用任务变得非常容易。

    【讨论】:

    • 这仅限于 python,这可能并不理想,因为 rabbitmq 是独立于语言的。是否有用于任务分发的独立于语言的现成包?
    猜你喜欢
    • 1970-01-01
    • 2012-12-08
    • 1970-01-01
    • 2013-08-09
    • 2014-11-20
    • 1970-01-01
    • 2011-02-17
    • 2011-03-13
    • 2017-06-10
    相关资源
    最近更新 更多