补充-celery的worker在另一台电脑上的情况
任务发出人 中间人 任务处理人 可以不在同一个电脑上。
将代码拷贝一份作为worker在另一台电脑上运行时,直接用celery命令执行任务模块,这可能导致代码找不到一些依赖而报错,原因是不需要启动django服务,django不被初始化,如果要用django的一些东西就出问题。解决方法是在任务模块里加几句:
import os
import django
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "oa.settings")
django.setup()