芹菜间隔计划的任务在24小时后不执行

时间:2019-01-29 12:35:36

标签: celery django-celery celery-task celerybeat

我正在使用django-celery-beat https://django-celery-beat.readthedocs.io/en/latest/来管理我的django项目中的芹菜任务。


代码段:

  

创建间隔时间

def get_or_create_interval(interval_time):
    schedule,created = IntervalSchedule.objects.get_or_create( 
        every=interval_time,
        period=IntervalSchedule.HOURS,
    )
    return schedule
  

根据上述间隔时间创建定期任务:

def set_periodic_task(project_name,task_name,project_id):
    interval = get_or_create_interval(25)
    PeriodicTask.objects.create(
        interval=interval,
        name='{0}-{1}'.format(project_name,project_id),
        task=task_name, 
        kwargs=json.dumps({'project_id': 35,
        }),
    )

我创建了一些具有不同间隔时间的定期任务,并注意到间隔时间在24小时以下的任务只能执行。

突出显示的任务无法执行。

enter image description here

请让我知道这种行为的可能原因。

settings.py

######## CELERY : CONFIG
CELERY_BROKER_URL = 'redis://localhost:6379'
CELERY_RESULT_BACKEND = 'redis://localhost:6379'
CELERY_ACCEPT_CONTENT = ['application/json']
CELERY_TASK_SERIALIZER = 'json'
CELERY_RESULT_SERIALIZER = 'json'
CELERY_TIMEZONE = "Asia/Kolkata"
CELERYBEAT_SCHEDULER = 'django_celery_beat.schedulers:DatabaseScheduler'
### ThirdPartyTOols
→ pip3 list | grep "celery"
celery (4.2.1)
django-celery (3.2.2)
django-celery-beat (1.3.0)

谢谢。

0 个答案:

没有答案