Celery为每个任务实例安排了过期时间的任务?

2024-10-03 09:09:10 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个django应用程序和celery beat数据库调度器。我想要的是从管理站点运行定期任务,并为每个任务设置过期时间。expirePeriodicTask中的属性是一个时间调度器,它停止为该任务创建新消息,但我希望过期时间吊销已计划但比某个值(例如一小时)早的任务。怎么做?在

我真的很困惑芹菜文档和不同版本之间的差异。在


Tags: django文档数据库应用程序消息属性站点时间
2条回答

我通过运行一个计划任务来解决这个问题,该任务运行具有所需到期时间的已定义任务:

@shared_task(bind=True, queue='q1', max_retries=3)
def parent_task(self, arg1):
    child_task.apply_async(kwargs={'arg1': arg1}, expires=86400)


@shared_task(bind=True, queue='q1', max_retries=3)
def child_task(self, arg1):
    pass

听起来您需要使用自定义scheduler class。在

相关问题 更多 >