【问题标题】:How to run multiple Celery daemons for each Vhost如何为每个 Vhost 运行多个 Celery 守护进程
【发布时间】:2013-06-07 13:54:07
【问题描述】:

如何设置 Celery 守护进程,以便它为多个单独的 Django 站点执行任务?

我有几个独立的 Django 站点在同一主机上运行,​​我想为每个站点支持 Celery 驱动的异步任务。 Celery(特别是 RabbitMQ 后端)支持通过 BROKER_VHOST 设置参数对任务进行分组,但我不清楚如何设置守护程序以正确执行所有虚拟主机的任务。

我计划根据docs 设置一个init 守护进程,但是Celeryd 配置文件只允许您指定单个Django 设置文件。如果我理解正确,我是否必须为每个唯一的 Django 设置文件设置一个单独的 Celery 守护程序?或者有什么方法可以将 Celeryd 配置为与所有 Django 站点一起工作?

【问题讨论】:

  • 不确定如何为每个虚拟主机单独运行 celery,但您可以做的一件事是您可以为每个任务定义路由。所以每个任务都会有它独立的队列。见routing tasks
  • @AamirAdnan,我不明白路线/队列如何适用于我。据我从这些文档中可以看出,所有队列都将使用相同的 Django 设置执行...

标签: python django celery django-celery


【解决方案1】:

我正在尝试弄清楚如何为多个服务器(每个服务器都有自己的数据库)设置 celery 守护进程。以下是我找到的参考资料。两者都没有给出完整的答案,但可能有一些灵感可以帮助你弄清楚。

【讨论】:

    猜你喜欢
    • 2011-09-30
    • 2012-10-13
    • 2014-08-30
    • 2014-04-26
    • 2023-03-02
    • 2012-12-25
    • 2017-05-27
    • 2014-07-03
    • 1970-01-01
    相关资源
    最近更新 更多