Tag: 内存

如何查看cygwin中进程使用了​​多less内存?

我在cygwin上运行node.js服务器,我想看看node.js进程使用了​​多less内存。 我怎么做? 任务pipe理器我认为只显示cywin控制台内存? 有没有一个命令来做到这一点?

meteor正在碰撞最小的DigitalOcean Droplet(内存不足:杀死过程…)

我在基本(512GB)DigitalOcean液滴上运行简单的Meteor应用程序。 偶尔meteor偶然崩溃与这个错误消息: Out of memory: Kill process 9682 (node) … … => Exited from signal: SIGKILL FATAL ERROR: JS Allocation failed – process out of memory 哪里不对? 这是非常简单的应用程序,它不能花费所有的内存。

for循环中的Javascript内存使用情况

我试图在nodejs(0.10.35)中剖析内存使用情况,我在下面创build了2个文件并使用node –expose-gc var a和var b被初始化为空string 运行for循环使a和b变大 setInterval每1秒打印一次内存使用情况 x >> 20运算符等同于Math.floor(x / 1024/1024),以MB为单位给出结果 //file 1.js var a = '', b = '', n = 0; var i = 10000000; for (;i;i–) {a += i; b += i;}} setInterval(function(){ var m = process.memoryUsage(); console.log(++n,m.rss>>20,m.heapTotal>>20,m.heapUsed>>20); },1000); setTimeout(function(){ global.gc(); console.log('1st garbage collect'); },2500); setTimeout(function(){ a = null; console.log('var a […]

heroku上的node.js web服务器 – 不断增长的内存

我的应用程序启动并运行在5个平行的dynos上的heroku。 有500-1500瑞克/分钟的恒定负载,所以高达25瑞克/秒。 问题是RSS内存在不断增长。 现在我手动重新启动应用程序时,内存达到危险的水平(1 heroku dyno使用的最大内存是512MB)。 内存图表看起来像这样(灰色上限是在512mb限制): 内存释放的时候(在图表上)是当我重新启动应用程序。 奇怪的是,只有当服务器上有不断的负载时才会发生。 当服务器上存在例如2分钟的负载时,则内存增加,之后再下降。 所以看起来由于某种原因,垃圾收集器工作不正常(这是没有收集垃圾,直到服务器加载完成,应用程序不忙)。 有什么我可以做的吗? 这不是内存泄漏,我认为是因为当服务器上没有负载时释放内存… 我到目前为止所尝试的是: 以2分钟间隔手动呼叫GC 设置 – max-old-space-size = 300然而当内存命中300mb时没有任何反应 – 它仍在增加。 也许有其他的select,可以帮助? 节点版本是0.10.20 我使用节点memwatch包,我设法从应用程序收集堆差异: http://jsonfiddle.net/auf8d(11分钟,+37 MB之间的堆差异) http://jsonfiddle.net/4nvcd(15分钟,+50 MB之间的堆差异) 所以肯定会有一些泄漏。 最大的记忆从第一差异变化: … { "what": "Array", "size_bytes": 9320312, "size": "8.89 mb", "+": 79086, "-": 10215 }, … { "what": "Closure", "size_bytes": 2638224, "size": "2.52 mb", "+": […]

Node.js v8-profiler模块将不会安装

我试图在Node.js应用程序中debugging内存泄漏,但不能通过npm安装v8-profiler模块: npm install v8-profiler 响应(缩写为错误部分) – 你可以在这里看到完整的错误和更多的评论: https : //github.com/dannycoates/v8-profiler/issues/9 Build failed: -> task failed (err #1): {task: cxx snapshot.cc -> snapshot_1.o} -> task failed (err #1): {task: cxx graph_path.cc -> graph_path_1.o} -> task failed (err #1): {task: cxx graph_node.cc -> graph_node_1.o} npm ERR! error installing v8-profiler@0.0.3 我在Debian 6.0.3上使用从源代码构build的节点0.6.10。 我没有任何其他NPM模块的问题。 我也尝试在具有相同操作系统的机器上安装模块,但是使用节点0.4.12来解决相同的问题。 任何帮助在这个问题将不胜感激。

Nodejs – 承诺,未处理的终止和内存泄漏

寻求有关使用promise的nodejs专家的帮助。 我有以下testing程序,其中我调用asynchronous“q”函数,只是抛出一个exception。 这个程序相当一致地泄漏内存; 但如果取消注释.done()调用,则泄漏消失。 为什么泄漏发生在承诺未终止(即没有完成()调用)? 我试图按照文档 ,但无法理解done()方法的解释。 在此先感谢您的帮助! 这是我的代码: (function() { var MAX_ITER_COUNT, Q, iterCount, maxMem, noop, qDoit, test; Q = require("q"); iterCount = 0; MAX_ITER_COUNT = 10 * 1000; maxMem = 0; noop = function() {}; qDoit = function() { var currentMem; currentMem = Math.round(process.memoryUsage().heapUsed / 1024 / 1024); if (currentMem > maxMem) { […]

Node.JS – 设置max-old-space-size的副作用太大?

我们的服务器在云PaaS(特别是Bluemix)上运行Node.JS。 我们可以通过PaaS控制面板configuration分配的内存量,但我注意到,对于大于1.4GB的值,您还需要使用–max-old-space-size选项执行节点( 此处解释)。 这意味着,只要我想改变分配的内存大小,我必须在设置中的两个地方进行更改。 如果我调用node –max-old-space-size 99999999999 app.js会发生什么情况? Node.JS会尝试分配99999999999MB,还是会考虑运行VM \ Container的实际内存限制? 它是否会影响GC的行为(即,如果看起来有很多可用空间,则GC将运行较less的次数)? 是否有–max-old-space-size use-machine-limits选项? 谢谢

Node.js内存填满

我正在尝试编写一个下载大型压缩文件的程序,将其解压到内存中,然后将内容(一系列CSV文件)推送到MongoDB。 但是,我一直在点击程序停止和打印点 FATAL ERROR: CodeRange::GetNextAllocationBlock Allocation failed – process out of memory 当他们不再被使用时,我将缓冲区设置为null,一旦它们在Mongo中,logging就设置为null,并且一次阻止处理多个文件。 这一切都没有帮助。 有没有更多的技巧来释放内存?

RSS和堆有什么区别?

在Node.js的情况下,我经常遇到提及RSS内存的情况。 关于RSS的维基百科文章非常简洁,我仍然不确定它与堆内存的区别。 它是堆+堆栈吗? 有人能像我5岁那样向我解释吗?

Node.js获取高内存使用率的通知

我在Amazon EC2的Ubuntu 14上运行了一个Node.js应用程序。 如果内存使用量达到特定的大小,我想发送电子邮件。 我知道,PM2公开了一个API,它允许在达到一定的内存使用量时重新启动应用程序。 现在我不想在这个时候重新启动应用程序,只是为了得到一个关于它的通知,并用它来做任何我想要的(在我的情况下,发送一封电子邮件)。 我怎样才能使用PM2或任何其他免费工具?