下面是pm2 process.json配置文件。这个应用程序被命令盯着看。
/root/src/sample_v2/deploy-scripts/processes.json pm2 start
{
"apps" : [{
"name" : "sample_app_v2",
"script" : "bin/www",
"log_date_format" : "YYYY-MM-DD HH:mm Z",
"node_args" : "--harmony",
"cwd" : "/root/src/sample_v2",
"env": {
"NODE_ENV": "production",
"AWESOME_SERVICE_API_TOKEN": "xxx",
"TZ": "Europe/Amsterdam"
}
}]
}输出
PM2: 2015-03-31 17:58:58: Starting execution sequence in -fork mode- for app name:sample id:10
PM2: 2015-03-31 17:58:58: App name:sample id:10 online
sample-10 (out): 2015-02-06 21:38 +04:00: Started...[object Object]
sample-10 (out): 2015-02-06 21:38 +04:00: mongoclient.connect
sample-10 (out): 2015-02-06 21:38 +04:00: Started...[object Object]
sample-10 (out): 2015-02-06 21:38 +04:00: mongoclient.connect
sample-10 (out): 2015-02-06 21:39 +04:00: Started...[object Object]
sample-10 (out): 2015-02-06 21:39 +04:00: mongoclient.connect
sample-10 (out): 2015-02-06 21:39 +04:00: Started...[object Object]
sample-10 (out): 2015-02-06 21:39 +04:00: mongoclient.connect
sample-10 (out): 2015-02-06 21:39 +04:00: Started...[object Object]
sample-10 (out): 2015-02-06 21:39 +04:00: mongoclient.connect
sample-10 (out): 2015-02-06 21:39 +04:00: Started...[object Object]
sample-10 (out): 2015-02-06 21:39 +04:00: mongoclient.connect
sample-10 (out): 2015-02-06 21:39 +04:00: Started...[object Object]
sample-10 (out): 2015-02-06 21:39 +04:00: mongoclient.connect
sample-10 (out): 2015-03-31 17:59 +04:00: Started...[object Object]
sample-10 (err): at Object.274:1 (cluster.js:594:5)
sample-10 (err): at handleResponse (cluster.js:171:41)
sample-10 (err): at respond (cluster.js:192:5)
sample-10 (err): at handleMessage (cluster.js:202:5)
sample-10 (err): at process.emit (events.js:117:20)
sample-10 (err): at handleMessage (child_process.js:322:10)
sample-10 (err): at child_process.js:396:7
sample-10 (err): at process.handleConversion.net.Native.got (child_process.js:91:7)
sample-10 (err): at process.<anonymous> (child_process.js:395:13)
sample-10 (err): TypeError: Cannot read property 'getsockname' of undefined
sample-10 (err): at net.js:1083:27
sample-10 (err): at Object.274:1 (cluster.js:594:5)
sample-10 (err): at handleResponse (cluster.js:171:41)
sample-10 (err): at respond (cluster.js:192:5)
sample-10 (err): at handleMessage (cluster.js:202:5)
sample-10 (err): at process.emit (events.js:117:20)
sample-10 (err): at handleMessage (child_process.js:322:10)
sample-10 (err): at child_process.js:396:7
sample-10 (err): at process.handleConversion.net.Native.got (child_process.js:91:7)
sample-10 (err): at process.<anonymous> (child_process.js:395:13)看起来,该进程试图启动10次。如何让pm2不启动多个实例?
编辑2:
添加属性
"instances" : 1对于json文件,它按预期工作,并且只启动一个进程。但它会发出警告
[WARN] You should not use the cluster_mode (-i) in production, it's still a beta feature. A front HTTP load balancer or interaction with NGINX will be developped in the future.如何在分叉模式中启动进程,并且仍然具有单个实例.
发布于 2015-04-20 19:41:24
在json设置中指定exec_mode和实例键:
{
"apps" : [{
"exec_mode": "fork",
"instances": 1
}]
}https://stackoverflow.com/questions/29370445
复制相似问题