在一个命令中运行许多Node.js服务器

时间:2019-02-07 13:37:51

标签: javascript node.js express nodemon

我的Nodejs服务器很少,它们是小型服务器,每个服务器都存储在一个单独的文件夹中。并且所有文件夹都存储在一个根文件夹中。每次我想运行服务器时,我都必须遍历其中的每一个并键入

.bashrc

这变得很烦人,尤其是服务器数量在增加。我可以用一个命令来运行所有服务器的任何工具或脚本吗? 基本上,我如何用一个命令或一个脚本运行所有服务器?

3 个答案:

答案 0 :(得分:1)

使用NPM。写在package.json:

{
  "name": "project-name",
  "version": "1.0.0",
  "scripts": {
    "start": "nodemon server1.js | nodemon server2.js | nodemon server3.js"
  }
}

那么您只需要执行npm start

另请参见this post

答案 1 :(得分:1)

PM2是一个很好的答案。

pm2 start app.js -i 4(或max将占用所有可用的内核)

您还将获得很多好处,例如自动重启,日志聚合和负载平衡。

答案 2 :(得分:0)

使用pm2

如果您使用Linux

#!/bin/bash 

pm2 start << Path to User Server>> 
pm2 start << Path to User Server>> 

pm2 logs 

您可以保存

pm2 save 

pm2 list 

pm2 stop