gpt4 book ai didi

node.js - 堆外 Node.js 中的内存泄漏?

转载 作者:搜寻专家 更新时间:2023-10-31 22:35:48 25 4
gpt4 key购买 nike

我刚刚修复了位于 node.js 堆中的 Node 应用程序中的内存泄漏。
我已经使用 Google 的 Profiler 对其进行了分析,并设法修复了内存泄漏。

现在我的应用程序再次运行了一段时间,我看到堆大小非常稳定。没有内存泄漏了。但是当我检查服务器的可用 RAM 时,我发现减少了......
当我重新启动我的 Node 服务器时,RAM 达到正常的可用 RAM。
现在我听说 Node.js 可以在堆外保存对象和内容。我认为这就是导致内存泄漏的原因。

我怎么能看到什么占用了内存?真的不能描述任何东西,或者我可以吗?

我正在使用:

node.js: v0.8.18 和
socket.io: v0.9.13

我正在使用的其他一些 Node 模块是:nodetime、heapdump(不过会删除它)、jquery、crypto、request 和 querystring。

一些图表:

Free OS memory
Node RSSHeap used

最佳答案

您可以做的是使用 heapdump模块创建核心转储,然后您可以将其加载到 webkit 的 web 检查器中以分析程序的内存状态。例如,查看 heapdump 模块中 README 的末尾,了解有关在 Google Chrome 中加载 heapdump 的说明。

看看this article了解某人如何追踪其程序中的内存泄漏。

关于node.js - 堆外 Node.js 中的内存泄漏?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15398111/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com