写PHP等脚本语言的时候,已经习惯了修改完代码直接打开浏览器去查看最新的效果。而Node.js 只有在第一次引用时才会去解析脚本文件,以后都会直接访问内存,避免重复载入,这种设计虽然有利于提高性能,却不利于开发调试。
在没有使用第三方工具的情况下,通常修改js文件后需要手动CTRL+C终止程序,再重新启动node服务,这显然是一件很繁琐的事情。
于是就出现了很多第三方的管理工具(例如:supervisor、hotnode、forever、pm2等),当文件修改保存后,它能自动重启node服务,帮助开发人员省下了很多繁琐的操作。
下面简单介绍一下使用的方法
supervisor
首先需要使用 npm 安装 supervisor(这里需要注意一点,supervisor必须安装到全局)
$ npm install -g supervisor
Linux 或 Mac用户需要使用管理员权限
sudo npm install -g supervisor
安装完成后就可以用supervisor启动服务了(假设你的Node.js程序主入口是app.js)
$ supervisor app.js
命令行窗口会显示启动成功信息,并开始代码监听,当代码被修改之后,运行的脚本会被终止,自动重新启动。
PS: express 4.x把用于项目启动的代码移到了./bin/www的文件,如需使用supervisor 启动express项目请使用下面的命令
supervisor bin/www
supervisor还有很多强大的功能,本人只是简单的介绍了如何在开发环境监听文件变化,自动重启服务方便调试应用程序的使用方法,对supervisor感兴趣的同学可以访问github地址了解更多详情:https://github.com/isaacs/node-supervisor