windows中执行celery beat任务

时间:2022-02-19 10:51:14

  由于最新的celery4.2不支持windows系统,因此按照网上的建议安装了3.1.25版。按照官网的说明使用

 app.conf.beat_schedule = {
'add-every-30-seconds': {
'task': 'tasks.add',
'schedule': 30.0,
'args': (, )
},
}
app.conf.timezone = 'UTC'
  • 问题是:开启worker和beat进程后发现周期性任务没有被执行?
  • 花了不少时间查了查,最终发现,解决办法:

    celery4中才引入了beat_schedule这些小写变量,以前都是大写变量。即:Version 4.0 introduced new lower case settings and setting organization. 具体见说明

    因此,我就把变量名改回了大写CELERYBEAT_SCHEDULE。果然成功了。