pm2 如何启动多个node
发布于 10 年前 作者 heixiaoshan 29143 次浏览 最后一次编辑是 8 年前

1.服务器启动就启动pm2 2.启动多个node pm2 /路径/app.js 3.启动后是不是不能关了?那么远程ssh的怎么办?

13 回复

启动后可以关啊,也可以delete掉。说明文档里有

@ccccccc2003 发现可以重复启动。

@heixiaoshan sos 日期聚合的那个你怎么解决的啊,分享一下。

@heixiaoshan 重复启动是 本身start一个进程,然后再次操作 start ,可以成功?我一般都是restart的,没试过2次start,话说2次start ,第2次必然和第1次端口冲突的

@onlyone1221 我文章里面写了解决方案的。

@heixiaoshan 你写的解决方法是怎么一个,我没找到用法,这是我现在的用的,你帮看下,怎么解决下日期 console.log(req.body.startTime,req.body.endTime); var start = new Date(req.body.startTime); var end = new Date(req.body.endTime); db.getModel(‘user’).aggregate([ { $match: { “regDate”: {"$gt" : start , “$lt” : end}}}, // match匹配是展现的形式 { $group: { _id: ‘$regDate’, // 2014-07-14T17:53:14.499Z regDate是module里的字段 Count: { $sum: 1 } } } ], function(error,docs){ console.log(docs); res.send(200,docs); });

你可以自己创建一个apps.json,然后通过pm2 start apps.json来启动apps.json里面定义的apps,该文件就是一个json格式的配置文件,告诉pm2该怎么去启动app,启动哪些app。比如:

[{
  "name"        : "your app name",
  "script"      : "the script to start your app",
  "cwd"         : "change working directory", // 指定该app工作目录,这样pm2会相对这个目录去找脚本之类的。
  "error_file" : "app-err.log",
  "out_file"   : "app-out.log",
  "pid_file"   : "app.pid",
  "one_launch_only"  : "true",
  "env": {
      "NODE_ENV": "production"
  }
}]

这个json是个数组,应该可以用这个json批量启动多个app,只是我还没试过。

@albertshaw 这个方法好。哈哈。创建多个数组就可以了,省事,有时间我去测试下。

回到顶部