我正在学习使用芹菜。我有一个函数(在 Flask 应用程序中),从我到目前为止所学到的有点伪代码中:
def do_a_task_route():
try:
result = a_celery_task.apply_async(args=[request_data])
returned = a_celery_task.AsyncResult(result.task_id).get(timeout = 2.0)
return jsonify(response = returned['response'])
except:
return jsonify(response = "some big problem")
我不是 100% 确定这是正确和最好的,但现在对我有用。似乎结果/返回的行可能是一个“返回 = run_task”,其中运行任务执行任务并等待。
我正在考虑重构方向——a)将这两行(结果/返回)捆绑在一个运行任务并调用结果的函数中,或者 b)将“AsyncResult”放入任务本身并返回。
以前做过这件事的人的芹菜方法是什么?或者只是来自以前微调过芹菜的人的一些反馈。