向 rabbitmq 发送 celery 任务消息
Send celery task message to rabbitmq
我通常将 celery 与 Django 一起使用,运行 在 Django 中共享任务。
但对于特定情况,我想在没有 运行ning Django 或 celerybeat 的情况下手动将任务队列添加到 rabbitmq。
是否有任何简单的 python 脚本或 shell cmd 可以做到这一点?
您可以使用 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',
})
我通常将 celery 与 Django 一起使用,运行 在 Django 中共享任务。
但对于特定情况,我想在没有 运行ning Django 或 celerybeat 的情况下手动将任务队列添加到 rabbitmq。
是否有任何简单的 python 脚本或 shell cmd 可以做到这一点?
您可以使用 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',
})