0

我编写了一个 NodeJS 服务,它将持续运行。我想使用 PM2 运行它的两个副本。

我也在尝试为它编写一个新贵脚本,但我无法让它工作(基本上stop不会工作,PID 永远不会正确。

我在 upstart 的节上读了一点expect,它告诉 upstart 服务是分叉 0 次、一次还是两次,我意识到 PM2 分叉 4 次然后结束,所以没有 PID 供 upstart 杀死以停止进程。

我应该放弃暴发户并为我的服务编写不同类型的启动脚本吗?

4

1 回答 1

0

在窥探之后,我想我可以回答我自己的问题:不,upstart 不适合这种任务,它需要一个可以杀死的 PID 来关闭服务。在 PM2 的情况下,没有这样的 PID,而且“停止”服务的方法不是杀死一个进程,而是运行一个(pm2 stop allpm2 kill)。所以,我回到了 pm2 自己生成的 bash 启动脚本。

于 2015-05-25T07:42:24.237 回答