开始:
- 首先安装django-celery,使用Redis作为Broker还需要安装celery-with-redis:
pip install django-celery pip install celery-with-redis sudo apt-get install redis-server 如果没有redis-server则不能开启redis默认的6379端口, 在后续的执行定时任务时, 会报错 beat: connection error...
- setting.py配置
import djcelery djcelery.setup_loader() #加载djcelery BROKER_URL = 'redis://localhost:6379/0' #Broker使用Redis, 使用0数据库(暂时不是很清楚原理) CELERYBEAT_SCHEDULER = 'djcelery.schedulers.DatabaseScheduler' #Backend数据库 INSTALLED_APPS = ( ... 'djcelery' #注册下载的django-celery )
- 在django app下建立tasks.py
from celery import task @task(name=’appname.tasks.func_name’) #appname为当前app注册的名字 def func_name(): print ‘测试成功’
- 在登录djngo后台admin/, 为periodic task 增加定时任务.