Celery beat schedule multiple tasks under same time-interval group Celery beat schedule multiple tasks under same time-interval group flask flask

Celery beat schedule multiple tasks under same time-interval group


The Celery Documentation: Periodic Tasks states that you can only have the name of the task to be executed (not a list, etc.)

You could create two different schedule entries:

CELERYBEAT_SCHEDULE = {    'every-minute_add': {        'task': 'tasks.add',        'schedule': crontab(minute='*/1'),        'args': (1,2)    },    'every-minute_multiply': {        'task': 'task.multiply',        'schedule': crontab(minute='*/1'),        'args': (3,4)    },}


CELERYBEAT_SCHEDULE = {'every-minute': {    'task': 'tasks.add',    'schedule': crontab(minute='*/1'),    'args': (1,2)},

}

You can use single task celery for your work to be done as per your question.Your tasks.py should be

def multiply(p1,p2):  return p1*p2def add(x,y):  z=multiply(3,4)  return x+y,z