相关疑难解决方法(0)

如何动态添加/删除周期性任务到芹菜(celerybeat)

如果我有一个定义如下的函数:

def add(x,y):
  return x+y
Run Code Online (Sandbox Code Playgroud)

有没有办法动态添加这个函数作为芹菜PeriodicTask并在运行时启动它?我希望能够做类似(伪代码)的事情:

some_unique_task_id = celery.beat.schedule_task(add, run_every=crontab(minute="*/30"))
celery.beat.start(some_unique_task_id)
Run Code Online (Sandbox Code Playgroud)

我还想用类似(伪代码)的东西动态地停止或删除该任务:

celery.beat.remove_task(some_unique_task_id)
Run Code Online (Sandbox Code Playgroud)

要么

celery.beat.stop(some_unique_task_id)
Run Code Online (Sandbox Code Playgroud)

仅供参考我没有使用djcelery,它允许您通过django管理员管理定期任务.

python celery celerybeat

43
推荐指数
4
解决办法
2万
查看次数

标签 统计

celery ×1

celerybeat ×1

python ×1