首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >指示pm2不要在json文件中启动多个实例

指示pm2不要在json文件中启动多个实例
EN

Stack Overflow用户
提问于 2015-03-31 14:02:15
回答 1查看 3.2K关注 0票数 1

下面是pm2 process.json配置文件。这个应用程序被命令盯着看。

/root/src/sample_v2/deploy-scripts/processes.json pm2 start

代码语言:javascript
复制
{
  "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"
    }
  }]
}

输出

代码语言:javascript
复制
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:

添加属性

代码语言:javascript
复制
"instances"   : 1

对于json文件,它按预期工作,并且只启动一个进程。但它会发出警告

代码语言:javascript
复制
[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.

如何在分叉模式中启动进程,并且仍然具有单个实例.

EN

回答 1

Stack Overflow用户

发布于 2015-04-20 19:41:24

在json设置中指定exec_mode和实例键:

代码语言:javascript
复制
{
  "apps" : [{
  "exec_mode": "fork",
  "instances": 1
  }]
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29370445

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档