小编Kit*_*ler的帖子

节点和快递。返回给用户并继续执行

我习惯于接受用户请求、处理它并响应结果。

然而,我有一个 API 端点,它需要对各种数据库、日志记录、电子邮件等进行大约 10 件事,所有这些都是异步的。只有第一个数据库调用需要成功,用户才能获得响应。剩下的可以继续。

问题是整个过程可能需要 10/20 秒,因此当用户只需要在第一个数据库查询(大约 100 毫秒)后得到答案时,他们会等待 10/20 秒。

我基本上需要

  • 用户提出请求
  • 发生异步数据库调用
  • 如果失败,则会向用户发出错误,但如果成功,则会返回成功
  • 用户可以自由地继续做他们需要做的事情,但服务器继续进行一些其他数据库调用

我对所有异步调用使用 async wait 并表达为我的 Web 框架。

javascript node.js express async-await

4
推荐指数
1
解决办法
1124
查看次数

标签 统计

async-await ×1

express ×1

javascript ×1

node.js ×1