《深入浅出Node.js》第5章 内存控制(未完)

@by Ruth92(转载请注明出处)

第5章 内存控制

基于无阻塞、事件驱动建立的 Node 服务,具有内存消耗低的优点,非常适合处理海量的网络请求。

内存控制正是在海量请求和长时间运行的前提下进行探讨的。

一、V8 的垃圾回收机制与内存限制

  1. V8 的内存限制

    在一般的后端开发语言中,在基本的内存使用上没有什么限制,但在 Node 中通过 JavaScript 使用内存时,只能使用部分内存,这样,再单个 Node 进程的情况下,计算机的内存资源无法得到充足的使用。

    ☞ 主要原因:Node 基于 V8 构建,在 Node 中使用的 JavaScript 对象基本上都是通过 V8 自己的方式来进行分配和管理的。

  2. V8 的对象分配

    在 V8 中,所有的 JavaScript 对象都是通过堆来进行分配的。

    ✔ V8 为何要限制堆的大小?

    • 表层原因:V8 最初为浏览器而设计,不太可能遇到用大量内存的场景。对于网页来说,V8 的限制值已足够。

    • 深层原因:V8 的垃圾回收机制的限制。

  3. V8 的垃圾回收机制

二、高效使用内存

三、内存指标

四、内存泄漏

五、内存泄漏排查

六、大内存应用


posted on 2016-12-05 09:53  Ruth92  阅读(143)  评论(0编辑  收藏  举报

导航