在实际应用中Celery的目录是有规则的
要满足这样的条件才可以
目录Celery_task这个名字可以随意,但是这个目录下一定要有一个celery.py这个文件
from celery import Celery my_task = Celery('task', broker='redis://127.0.0.1:6379', backend='redis://127.0.0.1:6379', include=["Celery_task.task_1", "Celery_task.task_2"])
from Celery_task.celery import my_task @my_task.task def func1(): return 123 @my_task.task def func3(): return 789
from Celery_task.celery import my_task @my_task.task def func2(): return 456
from Celery_task.task_1 import func1 from Celery_task.task_2 import func2 func1.delay() func2.delay()
PS:启动Worker的时候无需再使用文件启动,直接启动你的Celery_task目录就行了
celery worker -A Celery_task -l INFO -P eventlet