Celerybeat Несколько расписаний одной и той же задачи
Я получил следующее задание Celery beat, которое очищает 1000 предметов ежедневно в час ночи:
from celery.schedules import crontab
from .celery import app as celery_app
celery_app.conf.beat_schedule['maintenance'] = {
'task': 'my_app.tasks.maintenance',
'schedule': crontab(hour=1, minute=0),
'args': (1000,)
}
Я хочу чистить дополнительные 5000 предметов каждое воскресенье в 5 вечера. Есть ли способ добавить второе расписание?
'schedule': crontab(hour=17, minute=0, day_of_week='sunday'),
'args': (5000,)
И как сделать так, чтобы они не пересекались?
Задача 1 будет выполняться каждый день, включая воскресенье, а задача 2 будет выполняться только в воскресенье
app.conf.beat_schedule = {
'task1':{
'task':'my_app.tasks.maintenance',
'schedule': crontab(hour=1, minute=0),
'args': (1000,)
},
'task2':{
'task':'my_app.tasks.maintenance',
'schedule': crontab(minute=00, hour=17, day_of_week='sunday'),
'args': (5000,)
},
}