在 CentOS 系统中,配置 Node.js 应用程序的内存限制可以通过以下几种方法实现:
使用 Node.js 的内置 --max-old-space-size
参数:
在启动 Node.js 应用程序时,可以使用 --max-old-space-size
参数来设置内存限制。例如,将内存限制设置为 512MB:
node --max-old-space-size=512 app.js
这将限制 Node.js 应用程序使用的内存不超过 512MB。
使用环境变量 NODE_OPTIONS
:
您还可以通过设置环境变量 NODE_OPTIONS
来配置内存限制。例如,将内存限制设置为 512MB:
export NODE_OPTIONS="--max-old-space-size=512"
node app.js
这将在当前 shell 会话中设置内存限制。 若要使其永久生效,请将上述命令添加到您的 ~/.bashrc
或 ~/.bash_profile
文件中。
使用 PM2 进程管理器:
如果您使用 PM2 管理 Node.js 应用程序,可以使用 --max-memory-restart
参数设置内存限制。例如,将内存限制设置为 512MB:
pm2 start app.js --max-memory-restart=512M
当应用程序使用的内存超过 512MB 时,PM2 将自动重启应用程序。
使用 systemd 服务配置:
如果您的 Node.js 应用程序作为 systemd 服务运行,可以在服务单元文件中设置内存限制。编辑服务单元文件(例如 /etc/systemd/system/my-node-app.service
),并在 [Service]
部分添加以下行:
[Service]
...
MemoryLimit=512M
这将限制 Node.js 应用程序使用的内存不超过 512MB。 保存更改后,重新加载 systemd 配置并重启服务:
sudo systemctl daemon-reload
sudo systemctl restart my-node-app
通过以上方法之一,您可以在 CentOS 系统中配置 Node.js 应用程序的内存限制。