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,)
        },
   }
Вернуться на верх