4

我正在使用节点 v6.10.0 并试图弄清楚为什么我的 --debug-brk 速度如此之慢。如果没有这个标志(只有 --inspect 或 --debug),它几乎是瞬时的,尽管调试器仍然需要永远附加。

这一标志大大增加了加载时间。启用调试后,我的项目需要 50 多秒才能启动。

关于如何开始调试此问题的任何想法?

编辑:需要明确的是,它发生在两台计算机上,而 Hello World 不会发生。

编辑2:更多细节。我正在使用es6。我使用 webstorm 注销了正在发生的事情,发现阅读我所有的模块需要很长时间?也许这就是正在发生的事情?

有没有办法加快这个速度?加载所有的 require 语句需要 34 秒。

编辑 3:绝对是文件和要求语句。我将一些要求语句移动到仅在建立数据库连接后才加载。连接立即建立,但之后进程继续前进(再次持续几秒钟)。

有什么办法可以加快这个速度吗?

4

1 回答 1

1

“加载时间”是什么意思?您是在谈论打开前端(例如 Chrome DevTools)和在脚本的第一行命中断点之间的时间吗?

根据您的描述,这听起来像是套接字连接速度慢的问题。需要检查的一些事项:

  1. 如果您的 Node.js 版本输出的 URL 具有localhost- 将其替换为127.0.0.1. 某些操作系统使用 DNS 来解析此名称,并且可能无法解析它或速度很慢。
  2. 您对网络访问有任何问题吗?必须为您的节点版本下载特定的 Chrome DevTools 版本,这可能会很慢。

这可能是特定 Node.js 版本中的错误(我不记得任何可能导致此问题的具体内容)。令人费解的是,它是特定于应用程序的——当您运行--debug-brk--inspect-brk不执行 JS 时,直到连接调试前端之后。

请考虑在Node.js bugtracker上报告此问题- 随时直接抄送我(@eugeneo在错误描述中的任何位置添加)......我有机会看到你的代码 - 例如它在 GitHub 上吗?另外 - 你能试试更新的 Node 版本吗?

于 2017-03-21T18:32:15.883 回答