节点从 0.2.6 升级到 0.4.7 时出现超时问题.js

timeout issues on upgrade of node.js from 0.2.6 to 0.4.7?

本文关键字:问题 js 超时 节点      更新时间:2023-09-26

我最近将老化的应用程序从0.2.6升级到0.4.7。升级进行得非常顺利,大多数问题似乎都与图书馆有关。我正在使用快递来服务器 rest api 调用。

当应用启动时,会发生大量预取。有一些非常慢的呼叫被启动。在节点 0.2.6 上,这些调用将返回 15-30 秒的任何时间。升级后,调用将在一分钟 (!) 远远超过我们在其他地方设置的超时限制后返回,因此应用程序中断。

节点中是否有任何变化.js会导致这种情况?也许是关于最大同时连接数的事情?最新版本的请求和快递呢?

节点 0.4 引入了限制。请求遵循 http。Agent.maxSockets 默认值为 5。当我强制将其设置为 100 时,页面再次停止超时。我通过阅读请求文档想通了这一点:

因为节点 0.4.0 具有内部 池化机制的首选方式 共享连接正在使用代理 哪个请求用它的新简化 池 API。

并使用选项对象:

  • pool - 包含这些请求的代理的哈希对象。如果 省略此请求将使用 设置为节点的全局池 默认最大套接字。
  • pool.maxSockets - 包含最大数量的整数 池中的套接字。