从PHP中正常/强制重启NodeJS(与Forever一起运行)

时间:2014-11-13 10:30:25

标签: php node.js forever

我有10台NodeJS服务器在10台不同的机器上运行。

它们与Forever一起运行,如果它们崩溃,它们会保持运行状态,并在文件发生变化时重新启动它们。

我想通过单击HTML页面中的按钮重新启动它们。因为nodeJS不对外部世界开放,而只能从机器内部访问,所以我想使用PHP脚本作为外部世界和Node之间的“桥梁”。该按钮会向PHP脚本发送POST请求,然后以某种方式告诉Forever重新启动NodeJS进程。

第一个问题,我是否需要在每台服务器上都有一个PHP脚本,并要求每个脚本在自己的机器上重启NodeJS?或者我可以使用一个带有PHP脚本的服务器,它可以在某种程度上通知所有服务器(我当然知道它们的本地IP)来重新启动它们的NodeJS进程吗?

我想通过发送过程信号来做到这一点,但当然我不能通过网络做到这一点。

您怎么看?

1 个答案:

答案 0 :(得分:0)

我最终使用Forever中的Watch选项来监听文件夹中的文件更改。重启按钮更新“时间戳”文件,这将导致永远重新启动。由于NFS复制,它会传播到所有计算机。我认为不是最好的解决方案,但是我很乐意做更好的事情