Celery仅执行同步任务

问题描述 投票:0回答:1

我必须在子模块存储库上工作,所以我宁愿只运行同步任务。我正在使用芹菜暂挂任务来定期更新我的存储库,并且在用户请求后我还必须执行相同的任务。

这里是芹菜时间表配置:

app.conf.beat_schedule = {
     'sync': {
         'task': 'app.task_to_sync',
         'schedule': 0.2
     }
}

(计划的测试时间设置为0.2 s。

这是用户请求调用:

task_to_sync.apply().get()

我设置了这些设置以防止异步呼叫:

settings.task_always_eager = True
settings.task_eager_propagates = True

但是用户调用的任务与计划冲突。有什么主意吗?

python rabbitmq celery git-submodules schedule
1个回答
0
投票

使用芹菜节拍,“急切”任务以及安排任意任务没有意义。在我看来,“急切”设置仅适用于测试目的。您可能会对solo工作程序或具有单个工作程序进程(prefork)的默认--concurrency=1更满意。

© www.soinside.com 2019 - 2024. All rights reserved.