Node.JS教程30:自动重启服务器

如果用nodejs做服务器,很多情况下,是需要自动重启功能的。

比如:

场景1、当文件被修改时自动重启服务器。

这里的文件,可能是服务器主程序,比如修改了程序,也可以是其它依赖文件等。

例程:

两个文件,server.js是服务器文件。test30.js,用于启动监测server.js,当server.js文件内容发生变化时,自动重启之。

server.js:

test30.js:

执行效果:

场景2、高稳定性需求,做为服务器程序的守护进程,当发现服务器意外终止时,重启之。

比如,守护进程每10秒与主进程通信一次,万一发现主进程没有回应,就重启它。

守护进程代码:

abc的高稳定性,除了用子进程监测方式,本身还使用了三方模块forever,

forever(https://www.npmjs.com/package/forever)也具有同本代码所示一样的效果,如果用forever启动的程序意外中止,也会被自动重启。