Django中如何实现定时任务


=Start=

缘由:

整理、记录,方便以后参考、查阅

正文:

参考解答:

Django中实现定时任务的几种常见方式:

  • django-crontab(基于crontab)
  • django-celery(基于celery)
  • Django的command+crontab

这里先说说比较简单的django-crontab方式:

# 1、安装依赖
pip install django-crontab

# 2、编辑settings.py增加相应配置
INSTALLED_APPS = (
    'django_crontab',
    ...
)

# 3、编写定时执行的功能脚本
# myapp/cron.py
def my_scheduled_job():
    print 'exec in my_scheduled_job()'

# 4、编辑settings.py增加定时任务
CRONJOBS = [
    ('*/5 * * * *', 'myapp.cron.my_scheduled_job'),
    ('*/5 * * * *', 'myapp.cron.other_scheduled_job', '>> /path/to/cron.log'),
]

# 5、在命令行中添加、查看、删除定时任务
python manage.py crontab add
python manage.py crontab show
python manage.py crontab remove

 

参考链接:

=END=

, ,

《“Django中如何实现定时任务”》 有 1 条评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注