Raj*_*123 10 python mysql celery celery-task
我使用MySql作为芹菜的结果后端.我也想在DB中存储程序参数.
例如:
add.apply_async(args=[num1, num2, user]
Run Code Online (Sandbox Code Playgroud)
在这种情况下,我想在DB中存储用户参数,以便我可以稍后查询.
目前,我返回提供的参数,该参数存储在DB中.
def add(num1, num2, user):
return [num1+num2, user]
Run Code Online (Sandbox Code Playgroud)
但是,当任务处于运行状态时,未插入用户,我无法在DB中查询它.这有什么解决方案/黑客吗?
您只使用 MySql 作为结果后端,还是也将它用于队列(我不推荐)?如果您将其用于队列,则任务发送后参数应该立即存储在数据库中。否则,任务完成后才能存储任务结果。
如果您需要在任务运行时可查询参数,则需要在任务开始时手动将它们插入到数据库表中。如果您希望它们在任务开始之前可查询,则需要在调用之前将它们插入数据库表中apply_async。
| 归档时间: |
|
| 查看次数: |
428 次 |
| 最近记录: |