关于nodeJS垃圾回收机制的讲解文章很多,这里我就不再重复,下面记录了一下我在工作中遇到的问题。nodejs 在64位电脑可用内存为1.4G,这是V8的内存机制决定的,目前我司所用版本比较陈旧为V4.4.3,这个版本的垃圾回收并不是做的很好,只要堆空间内存还有可用分配的就会一直分配,但是不用的空间并不会短时间内回收,除非已经分配不了新的空间才会出发垃圾回收,这样就导致当运行了占用空间比较大的代码之后,对大对象进行值空之后依然占用着堆空间,造成内存虚高,下面代码为《深入浅出nodejs》里的一段测试代码
var showMem = function(){ var mem = process.memoryUsage(); var format =

本文介绍了NodeJS在旧版本中遇到的垃圾回收问题,V8引擎在内存分配上的行为导致内存占用过高。在较新版本的NodeJS中,这个问题已得到改善。对于仍在使用旧版本的开发者,可以通过添加`--expose-gc`启动参数并在代码中调用`global.gc()`主动触发垃圾回收。此外,子进程的垃圾回收也需要在创建时传递该参数。
最低0.47元/天 解锁文章
234

被折叠的 条评论
为什么被折叠?



