fork:无法分配内存 - Ubuntu NGINX 运行 NodeJS with PM2

fork: Cannot allocate memory - Ubuntu NGINX running NodeJS with PM2

我在 DigitalOcean 运行 NGINX 上有一个 Ubuntu droplet,它有两个 NodeJS 应用程序的反向代理,这两个 NodeJS 应用程序 运行 在不同的端口上,由 PM2 管理。

我看到的问题是:

这些应用程序使用 puppeteer 进行一些屏幕截图,然后将图像卸载到云服务。但我认为当图像处理完成后,节点内存不足,我最终看到了这条消息:

-bash: fork: Cannot allocate memory

然后droplet运行缓慢,经常崩溃

我有这个用于启动 PM2 服务的命令:

pm2 start npm --name "Production" -- start

我也尝试了以下方法,但这没有用。如果我更改命令顺序,我只会得到 error: unknown option--max_old_space_size'`:

pm2 start npm --name "Development" -- start --max-old-space-size=8192 --max-memory-restart 300M

我是 运行 节点 v12.13.0 和 Ubuntu 18.04.3 LTS

任何人都可以就如何解决这个问题提出任何建议,或者至少调试一下,我可以提供更多细节吗?

使用node-args

—-node-args="max-old-space-size=6144"