【发布时间】:2016-08-30 18:28:55
【问题描述】:
假设您将节点应用程序集群在 4 CPU 系统上,在 4 个工作器(子进程=新 V8 实例)中,每个工作器从大约 10mb 内存开始(默认)。
有没有办法让他们开始更多?喜欢
--max-old-space-size=...我怎样才能将更多 V8 设置传递给工作人员?
( + strongloop 和 PM2 如何处理它?;) )
【问题讨论】:
标签: javascript node.js strongloop pm2
假设您将节点应用程序集群在 4 CPU 系统上,在 4 个工作器(子进程=新 V8 实例)中,每个工作器从大约 10mb 内存开始(默认)。
有没有办法让他们开始更多?喜欢
--max-old-space-size=...
我怎样才能将更多 V8 设置传递给工作人员?
( + strongloop 和 PM2 如何处理它?;) )
【问题讨论】:
标签: javascript node.js strongloop pm2
您可以使用cluster.setupMaster() 设置传递给工作进程的参数。具体来说,有一个未记录的execArgv setting that defaults to process.execArgv,但您应该能够在那里传递任何节点/v8 特定标志的数组。
应用程序参数通过args 设置传递。
【讨论】:
如果您使用的是PM2,那么它会按需使用完整的CPU 内存,因为它为负载平衡和性能提供了很多配置。
如果你想使用CPU,只需在此处增加实例数
pm2 start app.js -i 2
其中i 是您要启动的实例数。
在使用pm2 时,以下步骤很重要:
pm2 stop all
pm2 delete all
pm2 start app.js -i 2
始终使用pm2 delete all 取消注册 CPU,因为如果您停止它,它仍会保留 CPU。
【讨论】: