使用快速应用关闭多个端口

时间:2019-03-23 07:10:34

标签: node.js express

我正在使用“ npm run node_1&npm run node_2&”在不同端口上运行应用程序的多个服务器实例,这成功地在3001和3002上运行了我的本地主机。但是当我尝试使用CTRL + C关闭它时,它只会关闭第一个定义的端口,而另一个端口仍在使用中,并在下面给出错误,当我再次运行它时

[nodemon]从node ./networkNode.js 3002 http://localhost:3002开始 events.js:173       投掷者//未处理的“错误”事件       ^

错误:监听EADDRINUSE:地址已在使用::: 3002

My package.json :

"scripts": {
    "node_1": "nodemon --watch . -e js ./networkNode.js 3001 
           http://localhost:3001",
    "node_2": "nodemon --watch . -e js ./networkNode.js 3002 
           http://localhost:3002",
  },

2 个答案:

答案 0 :(得分:0)

命令后的&作为后台作业运行。 here

中有许多命令可用于管理这些命令

可能更容易的是使用NPM concurrently软件包来启动这些过程。用concurrently杀死Ctrl+C会杀死它开始的所有工作。

答案 1 :(得分:0)

当您尝试使用&运行多个进程时,只有1个进程被附加到终端AFAIK,而当您按下 ctrl + c 时,只有附加的进程将获得{{3 }}。如果希望使用SIGINT signal event之类的流程管理器来运行这些流程,或者如果您不想大量使用pm2,则更好。