Node.js 面试题
目录

如何使用 process.memoryUsage() 查看 Node.js 进程的内存使用情况?

· 约 3 分钟读完 · 第 68 / 377 章

推荐答案

本题详细解读

1. process.memoryUsage() 方法

process.memoryUsage() 是 Node.js 提供的一个方法,用于返回一个对象,该对象描述了 Node.js 进程的内存使用情况。返回的对象包含以下属性:

  • rss: Resident Set Size,表示进程占用的物理内存总量(包括代码段、堆、栈等)。
  • heapTotal: V8 引擎分配的堆内存总量。
  • heapUsed: V8 引擎使用的堆内存量。
  • external: V8 引擎管理的绑定到 JavaScript 对象的 C++ 对象的内存使用量。

2. 使用示例

通过调用 process.memoryUsage(),可以获取当前 Node.js 进程的内存使用情况。以下是一个简单的示例:

3. 输出解释

  • RSS: 表示进程占用的物理内存总量,单位为字节。
  • Heap Total: 表示 V8 引擎分配的堆内存总量,单位为字节。
  • Heap Used: 表示 V8 引擎当前使用的堆内存量,单位为字节。
  • External: 表示 V8 引擎管理的绑定到 JavaScript 对象的 C++ 对象的内存使用量,单位为字节。

4. 注意事项

  • process.memoryUsage() 返回的内存使用量是动态变化的,可能会随着程序的运行而增加或减少。
  • 该方法返回的内存使用量是当前时刻的快照,因此如果需要监控内存使用情况,可能需要定期调用该方法。

通过以上方法,开发者可以方便地监控 Node.js 进程的内存使用情况,从而进行性能优化和内存泄漏排查。