为啥 node.js 配置文件的大小会是数 GB? webstorm 处理的方式

Posted

技术标签:

【中文标题】为啥 node.js 配置文件的大小会是数 GB? webstorm 处理的方式【英文标题】:Why would a node.js profile be multiple GB in size? way to big for webstorm to handle为什么 node.js 配置文件的大小会是数 GB? webstorm 处理的方式 【发布时间】:2015-11-22 22:15:05 【问题描述】:

所以,我正在尝试分析现有的大型 node.js webapp。 好像运行OK了,正常运行的时候,我加了一个debug启动配置。

我的第一次尝试,我让它运行,试图加载一个非常复杂的页面 - 回来发现一个 4GB 的配置文件日志已经填满了它(和我的系统)所在的小分区上的剩余空间,导致各种问题.

做了一个快速测试,只运行了服务器几秒钟,得到了一个大约 15MB 的配置文件,它加载了一些模块 - 但它可以工作。

第二次尝试 - 仔细观察,一旦服务器接受连接,我就开始加载一个更简单的页面(观察配置文件日志以 ~3mb/s 的速度增长) - 到页面加载时,我有一个 600MB记录,停止服务器以查看结果。 等了好久,phpstorm 报错内存不够——限制在 750MB。 我已将其增加到 1500MB - 但我认为在另一次测试之前我应该​​在这里寻求一些智慧,因为这个分析器似乎真的不实用!

我是否对这个分析器期望过高,无法为我提供有关复杂应用程序的信息(我应该使用不同的分析器)? 这是否表明应用存在某种问题? 也许我做错了什么?

欢迎所有答案!

编辑:phpstorm 运行的命令是/usr/bin/node --prof --logfile=v8-23-11-15_00-37-35-0.log --log-timer-events bin/www

【问题讨论】:

你有很多应用程序级别的日志语句吗?我不熟悉 php/webstorm,它记录在什么级别?是否每秒拍摄一个堆快照,如果是 3mb 左右,我不会感到惊讶 如同“console.log”语句?不,几乎没有 运行的命令是:/usr/bin/node --prof --logfile=v8-23-11-15_00-37-35-0.log --log-timer-events bin/万维网 【参考方案1】:

好的,删除--log-timer-events 使日志大小合理,服务器运行速度也不错!信息较少 - 但它似乎仍然包含我希望/期望看到的大部分内容。

没有将此答案标记为已接受,因为我觉得我仍然在黑暗中挣扎,比我想要的要多一点。

【讨论】:

标记为正确答案 - 似乎有很多计时器事件,这使得配置文件很大 - 更多细节可能是另一个问题?

以上是关于为啥 node.js 配置文件的大小会是数 GB? webstorm 处理的方式的主要内容,如果未能解决你的问题,请参考以下文章

为啥逆向工程时,大小为 7.6 MB 的 APK 文件会在 exFAT 格式的外置硬盘上分配 1.36 GB?

我已经加载了一个 1.5GB 的 csv 文件并成功加载了我的表大小是 250MB 为啥会这样?

Node.js的嵌入式文档数据库[关闭]

两个一样的硬盘(除了分区表不一样)一样的文件 占用空间为啥不一致?

在 Node JS 中处理 10 GB JSON 文件

如何确定 node.js 的正确“最大旧空间大小”?