在node.js中,调试的时候,无论修改了代码的哪一部分,都需要重启Node.js服务之后才能生效。这是因为 Node.js 只有在第一次引用到某部份时才会去解析脚本文件,以后都会直接访问内存,避免重复载入。Node.js的这种设计虽然有利于提高性能,却不利于开发调试,因为我们在开发过程中总是希望修改后立即看到效果,而不是每次都要终止进程并重启。

supervisor可以监测文件修改,并自动重启Node服务器。这样修改后就能立即看到效果了。

supervisor的安装:

supervisor建议安装到全局环境。

npm -g install supervisor

安装完成之后就可以使用supervisor来启动服务了。

supervisor app.js

supervisor支持的参数如下:

要监控的文件夹或js文件,默认为’.’:

-w|--watch <watchItems>

要忽略监控的文件夹或js文件:

-i|--ignore <ignoreItems>

监控文件变化的时间间隔(周期),默认为Node.js内置的时间:

-p|--poll-interval <milliseconds>

要监控的文件扩展名,默认为’node|js’:

-e|--extensions <extensions>

要执行的主应用程序,默认为’node’:

-x|--exec <executable>

开启debug模式(用–debug flag来启动node):

--debug

安静模式,不显示DEBUG信息:

-q|--quiet

其他:

实现同样功能的类似产品还有forevernodemonnode-devPM2等。

本文作者:子匠_Zijor,转载请注明出处:http://www.dengzhr.com/node-js/860