【问题标题】:Node.js server very slow starting timeNode.js 服务器启动时间很慢
【发布时间】:2018-03-06 14:50:24
【问题描述】:

我构建了一个小型 angular.js Web 应用程序,托管在我的计算机上运行的 Node.js 服务器上。 当我启动节点服务器时,大约需要 30/35 秒。同事计算机上完全相同的服务器需要 2-4 秒才能启动。

我已经在控制台中记录了时间,以查看哪些步骤较慢。它从一开始就是在 require() 步骤中加载依赖项时。 Express 模块耗时 26s,Morgan 模块耗时 4s,其余 3s。

我知道您可能找不到根本原因,但如果有人知道是什么导致我的电脑出现这种情况,我很乐意接受任何提示 :)

感谢您的帮助。

【问题讨论】:

  • 这是什么电脑?也许您的同事只是拥有一台更新/更快的计算机。
  • 我们已经检查过了,它们是一样的(在我们公司)
  • 也许只是占用了您的 CPU/内存/磁盘?一个显而易见的答案,但值得一看。
  • 是的,但没有运行,CPU 使用率为 4%,内存使用率为 20%。
  • 检查他在全球保存的 npm 模块与您的。 BCrypt 是一个可能的候选者。

标签: javascript angularjs node.js express


【解决方案1】:

因此,有时此过程可能会非常缓慢,具体取决于您的 PC。 require 实际上正在加载模块,这可能需要一段时间,具体取决于硬件和依赖项的大小。对我来说,在我的 Macbook + SSD 上使用 express 不到一秒。

查看您的驱动器上有多少可用空间。有时,可能是因为驱动器太旧并且已经用完了足够的块!

【讨论】:

    【解决方案2】:

    找到它...该应用程序位于远程驱动器上、云上或我猜的其他东西上(连接到我们的会话时,我们可以访问此驱动器,无论电脑如何)。 将其重新定位到 D:解决了问题...

    【讨论】:

      【解决方案3】:

      我在寻找解决我的问题的解决方案时遇到了这个问题,即开发中的节点服务器启动缓慢。没有一个答案能解决我的问题,但对于那些试图根除潜在原因的人,我在文件根目录(函数外部)加载了一个大型 json 对象(~500mb),它导致了我的服务器从大约 1 秒的加载时间到 20 秒。

      因此,如果您遇到这种情况,请仔细检查您是否没有在服务器启动时加载任何大型依赖项。

      【讨论】:

      • 谢谢,这让我检查了 package.json 中的依赖项。我删除了一个未使用的依赖项,服务器再次快速重新加载,而不是大约 15 秒。
      猜你喜欢
      • 2013-12-25
      • 2011-01-14
      • 2020-11-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-07-17
      • 2015-08-18
      相关资源
      最近更新 更多