为什么 nodejs 不遵守 pm2 生态系统文件中设置的内存限制

why nodejs is not respecting the memory limits set in pm2 ecosystem file

我正在尝试将 nodejs 配置为仅使用 512 MB 的 ram 内存。这是我的生态系统配置文件

module.exports = {
  apps: [{
   script: './app.js',
   watch: true,
   instances: "max",
   exec_mode  : "cluster",
   ignore_watch : ["node_modules"],
   "node_args": "--max_old_space_size=512",
   }]
};

这里是 package.json

中的 pm2 脚本
"scripts": {
"start": "env-cmd -f ./Config/dev.env pm2 start ecosystem.config.js --no-daemon",
"dev": "env-cmd -f ./Config/dev.env nodemon start app.js",
"debug": "env-cmd -f ./Config/dev.env node --inspect app.js"
}

当我 运行 我的代码使用 npm 运行 启动时。我检查了我使用 free -m 命令的记忆,我可以看到我正在使用 750 MB 的 ram 内存

我想你必须使用 --max-memory-restart 而不是 --max_old_space_size 在你的 echo 系统或命令行参数