Django框架中Celery应用学习-配置

配置文件:celery.py

# 启动后自动取记载APP下的tasks.py文件
app.autodiscover_tasks(lambda: settings.INSTALLED_APPS)
# 设置环境变量
from HArtPro import settings
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'HArtPro.settings')
# 创建Celery对象
app = Celery('hart')
# 加载配置
app.config_from_object('django.conf:settings')
# 自动发现task的异步任务
app.autodiscover_tasks(lambda :settings.INSTALLED_APPS)

这种由djcelery调用,所以需要在settings.CELERYBEAT_SCHEDULER设置一个调度器,这里使用数据库。

djcelery提供了一些Model(定义在djcelery/models.py文件)

描述定时任务。重要字段有:

name: 字符串,标识符

task: 字符串,任务函数/类所在的路径,一般是celery_imports + function name。

interval:外键指向intervalschedule,表示每隔多少时间执行

crontab:外键指向crontabschedule,表示在某一时刻执行。

enabled:是否生效

intervalschedule

表示时间间隔,有两个参数:

every:正数;period间隔单位。比如intervalschedule(every=2, period='day')表示每隔2天

crontabschedule

表示某一时刻,有minute、hour、day_of-week、day_of_month、day_of_year它们的组合意义,参见cron时间表示法,比如0 0 * 10 * 表示每个月的10号凌晨。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值