【发布时间】:2019-04-07 01:16:21
【问题描述】:
我通常在 Django 中使用 celery,并在 Django 中运行共享任务。
但对于特定情况,我想手动将任务队列添加到 rabbitmq,而不运行 Django 或 celerybeat。
是否有任何简单的 python 脚本或 shell cmd 可以做到这一点?
【问题讨论】:
标签: python django redis rabbitmq celery
我通常在 Django 中使用 celery,并在 Django 中运行共享任务。
但对于特定情况,我想手动将任务队列添加到 rabbitmq,而不运行 Django 或 celerybeat。
是否有任何简单的 python 脚本或 shell cmd 可以做到这一点?
【问题讨论】:
标签: python django redis rabbitmq celery
您可以使用send_task method 将任务排队到任意 celery 代理。但是,您必须知道应用名称和代理 url,以便您可以将任务发送到正确的位置。
from celery import Celery
app = Celery('app_name', broker='pyamqp://guest@localhost//')
app.send_task('namespace.my_task', kwargs={
'arg1': 'value1',
'arg2': 'value2',
})
【讨论】: