Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/364.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在芹菜中注册不同的任务_Python_Django_Celery - Fatal编程技术网

Python 在芹菜中注册不同的任务

Python 在芹菜中注册不同的任务,python,django,celery,Python,Django,Celery,我用芹菜做了两种任务。一个是独立的芹菜任务,它可以根据数据库推送通知执行操作(程序侦听数据库,一旦有消息,它就会启动任务)。另一个与django集成,django接受url请求,用于启动任务。我随后用芹菜安装了django应用程序。对于独立芹菜任务,我在最外面的django目录下有tasks.py,该目录定义了正常任务: from celery import Celery from demoapp.utils.read_images import download_images_mem app

我用芹菜做了两种任务。一个是独立的芹菜任务,它可以根据数据库推送通知执行操作(程序侦听数据库,一旦有消息,它就会启动任务)。另一个与django集成,django接受url请求,用于启动任务。我随后用芹菜安装了django应用程序。对于独立芹菜任务,我在最外面的
django
目录下有
tasks.py
,该目录定义了正常任务:

from celery import Celery
from demoapp.utils.read_images import download_images_mem

app = Celery('tasks', backend='redis://localhost', broker='amqp://guest@localhost//')

@app.task
def make_video(img_url_list, deviceid, utc, dst, cityname, streetname, CorF, lat, lon):
    download_images_mem(img_url_list, deviceid, utc, dst, cityname, streetname, CorF, lat, lon)
我在
demoapp
目录下还有一个
tasks.py
,它的开头是:

@shared_task
def fired_by_url():
    func definitions

我使用rabbitmq作为代理,使用redis作为这两个任务的后端。我的问题是,我怎样才能把它们组合在一起?基本上我遵循了《django芹菜》教程和《普通芹菜》教程,这就是为什么我有如此奇怪的目录布局和文件。但我想知道如何把它们组合在一起。我有这样的问题:我应该使用哪个芹菜实例?
settings.py中的
app=芹菜('proj')
app=芹菜('tasks',backend')redis://localhost'经纪人'amqp://guest@localhost/')
?我应该使用哪一个装饰器来完成这两项任务?我应该如何组织我的文件?它们应该在同一台机器上运行。我对芹菜很陌生,现在有点困惑。任何帮助都将不胜感激。提前谢谢。

我想你的设置中不需要app=芹菜(“proj”)。另一个应该可以。我认为你的settings.py中不需要app=芹菜('proj')。另一个应该有效。