Asyncio长期运行的任务

时间:2019-08-21 14:36:15

标签: python-asyncio

例如,在Web应用程序中具有长期运行任务的标准方案。 例如,有一些Http应用程序(当然带有Asyncio)。 客户端来到此应用程序并提出一些请求,例如获取其他站点的信息。服务器应创建task并将任务的ID返回给客户端。一段时间后,客户端使用任务ID进行请求,以确定任务的状态。

我认为应该使用常规词典来存储任务,但是当任务完成(失败或成功)时,我应该存储其结果。 我想使用此解决方案:

  1. 获取请求-创建任务(asyncio.create_task)。
  2. 创建任务的ID(uuid)将其放入字典
  3. 任务完成后,将其结果存储到Redis
  4. 当用户请求首先在dict中查找任务,而在redis中没有任务查找以获取任务状态时。

像芹菜不是吗? 这是好方法吗?

0 个答案:

没有答案