Nodejs应用程序挂起了大量请求

时间:2017-09-26 08:09:06

标签: node.js postgresql express pg-promise

我正在使用,Nodejs使用pg-promise表达服务器。我在数据库中有一些查询需要很多时间才能返回结果。对于此类查询,如果查询pg-promise查询需要更长时间并且服务器返回错误,则将超时设置为3秒,这将使promise失败。但问题是,如果我使用相同(重)查询发送后续请求,则应用程序会挂起并花费时间开始处理新请求。它不会抛出任何错误,这就是为什么它很难调试。我想知道节点应用程序挂起的原因是什么?

1 个答案:

答案 0 :(得分:0)

每当有人提出一个关于查询执行在一开始就花费太长时间的问题时,它总是指出对围绕数据库服务的开发和实现的基础知识的误解。

这些问题通常源于以下问题:

  • 数据库设计不正确或缺乏必要的性能考虑因素
  • 错误的查询执行计划,即使用非常低效的查询逻辑
  • 连接池使用不当,即数据库连接问题
  • 以上的组合

因此,当您尝试通过简短的问题描述解决如此庞大的可能问题池时,如果没有任何代码示例,您将永远无法获得任何可用的答案。它过于宽泛,需要涵盖与编写数据库服务有关的太多主题。