Node.js V8
Node.js V8
什么是V8
V8是Chromium项目为Google Chrome浏览器开发的开源JavaScript引擎。它是用C ++编写的。如今,它已用于许多项目中,例如Couchbase,MongoDB和Node.js。
Node.js中的V8
Node.js V8模块表示特定于V8版本的接口和事件。它提供了通过 v8.getHeapStatistics()和 v8.getHeapSpaceStatistics()方法获取有关堆内存信息的方法。
要使用此模块,您需要需要使用 require('v8')。
const v8 = require('v8');
Node.js v8.getHeapStatistics()示例
v8.getHeapStatistics()方法返回有关堆的统计信息,例如总堆大小,已用堆大小,堆大小限制,总可用大小等。
文件: v8-example1.js
const v8 = require('v8');
console.log(v8.getHeapStatistics());
Node.js v8.getHeapSpaceStatistics()示例
v8.getHeapSpaceStatistics()返回有关堆空间的统计信息。它返回一个由5个对象组成的数组: 新空间,旧空间,代码空间,映射空间和大对象空间。每个对象都包含有关空间名称,空间大小,已用空间大小,可用空间大小和物理空间大小的信息。
文件: v8-example2.js
const v8 = require('v8');
console.log(v8.getHeapSpaceStatistics());
Node.js中V8的内存限制
当前,默认情况下,默认情况下,v8在32位系统上的内存限制为512mb,在64位系统上的内存限制为1gb。您可以通过将--max-old-space-size的最大值设置为32位系统〜1gb和64位系统系统的〜1.7gb来提高限制。但是,如果您遇到内存限制,建议将单个进程分成多个工作进程。