概述
>如何使用rabbitmq为这种架构配置芹菜?
>在其他工作节点上,应该设置什么?
为此,您可以在rabbitmq上创建新的用户/虚拟主机.
# add new user sudo rabbitmqctl add_user <user> <password> # add new virtual host sudo rabbitmqctl add_vhost <vhost_name> # set permissions for user on vhost sudo rabbitmqctl set_permissions -p <vhost_name> <user> ".*" ".*" ".*" # restart rabbit sudo rabbitmqctl restart
从其他节点,您可以排队任务,也可以只运行工作人员来执行任务.
from celery import Celery app = Celery('tasks',backend='amqp',broker='amqp://<user>:<password>@<ip>/<vhost>') def add(x,y): return x + y
如果您有这样的文件(比如task.py),则可以使用add.delay()排队任务.
你也可以开始工作
celery worker -A task -l info
你可以在这里看到我的答案,以便简要了解如何使用run tasks on remote machines.对于一步一步的过程,你可以查看我写过的帖子on scaling celery.
总结
以上是编程之家为你收集整理的python – 多个工作节点上的Django Celery任务全部内容,希望文章能够帮你解决python – 多个工作节点上的Django Celery任务所遇到的程序开发问题。
如果您也喜欢它,动动您的小指点个赞吧