如题,最近在使用 django-celery-beat,在使用中发现 IntervalSchedule 可正常使用。但是 Crontab 及 Clocked 却不执行,也没有任何报错。有没有大佬遇到过这种问题,怎么解决的。
现在根据 github 问题尝试解决过,依然没什么用。 https://github.com/celery/celery/issues/4184
Celery Settings
CELERY_BROKER_URL = 'redis://localhost:6379/1'
CELERY_RESULT_BACKEND = 'django-db'
CELERY_TIMEZONE = 'Asia/Shanghai'
CELERY_ENABLE_UTC = False
CELERY_WORKER_CONCURRENCY = 99
CELERY_ACKS_LATE = True
CELERY_WORKER_MAX_TASKS_PER_CHILD = 5
CELERY_TASK_TIME_LIMIT = 15 * 60
CELERY_BEAT_SCHEDULER = 'django_celery_beat.schedulers:DatabaseScheduler'
DJANGO_CELERY_BEAT_TZ_AWARE = False
1
wuwukai007 2020-03-30 17:56:05 +08:00
是 django-celery 还是 celery,
|
2
pl01665077 2020-03-30 18:02:02 +08:00
我估计是时区的配置问题。CELERY 时区和 Django 时区还有 django-celery-beat 时区。比如如果存数据的是 UTC 时区但读取是取东八区时区,那么可能延迟了 8 小时才执行。
|
3
5TuNan OP @pl01665077 我 Django 的时区`TIME_ZONE = 'Asia/Shanghai'``USE_TZ = False`,与 Celery 保持一致的。但还是无法执行😂。
@wuwukai007 感谢白送的 5 铜币。 |