如果发生504(网关超时),则重新加载路由方法

时间:2017-05-29 09:39:19

标签: node.js express

我正在使用expressjs框架构建一个nodejs应用程序。最近我遇到了一个关键问题,其中一个路由方法面临504超时,因为它需要太多时间来获取某个查询的输出。我优化了查询和数据库但是没有use.It仍然得到504超时。我的问题是,如果它超时504,我可以重新加载路由方法吗?

1 个答案:

答案 0 :(得分:0)

重新加载是什么意思?您可以对此路线执行相同的请求,它将再次启动。如果它将有相同的时间来处理它将再次超时。要解决这个问题,你需要:

  • 创建分离的进程,这将完成长时间的工作(做数据库请求)
  • 执行检查长工作流程,直到完成
  • 再开始
  • 如果结果准备好,则返回响应等待或结果

您可以每次启动进程,也可以创建微服务守护进程并通过某种rpc(例如json-rpc)与之通信