使用django-celery-beat时,遇到了一个定时任务不执行的问题。

一切都好好的,就是本来定时任务是执行的,后来不执行了。

寻找了好久的bug都没有找到原因。最后决定git回退版本。

回退之后,果然,定时任务又开始好好执行了。

然后开始一点点修改和测试。

最后发现,在django的settings里面,添加了CELERY_TIMEZONE = ‘Asia/Shanghai’ 这个属性后,celery的定时任务就不再执行。

把这条注释掉,定时任务就恢复执行。

具体原因还不清楚。

第二天查看了相关资料。

大概是因为periodic任务和timezone的关系吧。要使用utc时间,才能正常工作。

分类: Celery

0 条评论

发表回复

Avatar placeholder

您的电子邮箱地址不会被公开。