Node.js V8模块

本文概述

  • 什么是V8
  • Node.js中的V8
  • Node.js v8.getHeapStatistics()示例
  • Node.js v8.getHeapSpaceStatistics()示例
  • 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模块

文章图片
Node.js v8.getHeapSpaceStatistics()示例 v8.getHeapSpaceStatistics()返回有关堆空间的统计信息。它返回一个由5个对象组成的数组:新空间, 旧空间, 代码空间, 映射空间和大对象空间。每个对象都包含有关空间名称, 空间大小, 已用空间大小, 可用空间大小和物理空间大小的信息。
文件:v8-example2.js
const v8 = require('v8'); console.log(v8.getHeapSpaceStatistics());

Node.js V8模块

文章图片
Node.js中V8的内存限制 【Node.js V8模块】当前, 默认情况下, v8在32位系统上的内存限制为512mb, 在64位系统上的内存限制为1gb。你可以通过将– max-old-space-size的最大值设置为32位系统?1gb和64位系统系统的?1.7gb来提高限制。但是, 如果你遇到内存限制, 建议将单个进程分成几个工作进程。

    推荐阅读