启动Node.js永远使用–nouse-idle-notification和其他标志

以前,我通过以下方式开始生产节点应用程序:

NODE_ENV=production forever start index.js 

但是,根据这个问题的build议,我想用–nouse-idle-notification开始节点。 我也发现这篇文章关于设置 – max-old-space-size等等。不幸的是,没有人问我能否看出如何判断标志是否被节点实际接受,所以我不知道如何告诉如果我永远的语法是正确的。

此外,我不能永远接受这两个论点。

例如,如果我使用这个

 NODE_ENV=production forever start --max-old-space-size=8192 --nouse-idle-notification index.js 

我得到了“永久使用信息”,好像我试图永远开始而不传递.js文件来运行(例如,只是input“永远”)。 如果我把标志放在“开始”命令之前,似乎就开始了,但是我不知道如何判断标志是否被接受。

有人可以帮助我正确的语法?

你需要传递-c参数:

 forever start -c "node --max-old-space-size=8192 --nouse-idle-notification" index.js 

如果你列出了进程,你会看到标志是荣幸的。

 forever list 

除非你真的因为其他原因而永远爱着,否则请尝试一下。

通过标志是非常容易的,因为您可以指定确切的命令:

 mon "node --max-old-space-size=8192 --nouse-idle-notification --expose-gc server.js" -d 

它只监视一个节点进程。 如果你想监视像永远那样的一组进程,请安装mongroup ,它是一个pipe理mon的bash脚本。

这将为您节省一些RAM,特别是如果您正在监视很多节点进程(我想永远会为您要监视的每个进程启动一个额外的节点进程)。

快速提示:上次我查了一下,TJ Holowaychuk的mon的分支在linux下运行的不好(我想他只在Mac上testing过),但是这个工作正常,现在正在使用。 编辑 :其实2天前问题已经closures,主要分支现在应该工作。

你可以尝试:

 forever start --max-old-space-size=8192 --nouse-idle-notification -c "NODE_ENV=production node" index.js