我有两个环境
1。Web服务器
2.芹菜工人
web服务器将作业添加到芹菜消息队列中。但是那些env是分开的,所以不能导入任务函数。
如何显式调用不存在的任务?
ex(
# A project (web) - view.py
def view(request):
[X] task_a.delay()
[O] add_jobs("task_a", *args)
...
# B project (worker) - tasks.py
@task
def task_a:
...
使用send_task
函数将任务发送到解耦的芹菜项目。
from celery.app import Celery
app = Celery(broker_url='the broker url of the celery instance')
app.send_task(name='myapp.mytaskname', kwargs={
'arg1': 'value1',
'arg2': 'value2',
})