在开发Node.js 实现的HTTP 应用时会发现,无论你修改了代码的哪一部份,都必须终止Node.js 再重新运行才会奏效。这是因为Node.js 只有在第一次引用到某部份时才会去解析脚本文件,以后都会直接访问内存,避免重复载入,而PHP 则总是重新读取并解析脚本(如果没有专门的优化配置)。Node.js的这种设计虽然有利于提高性能,却不利于开发调试,因为我们在开发过程中总是希望修改后立即看到效果,而不是每次都要终止进程并重启。
supervisor 可以帮助你实现这个功能,它会监视你对代码的改动,并自动重启Node.js。使用方法很简单,首先使用npm 安装supervisor:
$ npm install -g supervisor
备注: -g 表示全局安装,这样其他的应用也可以使用supervisor
如果你使用的是Linux 或Mac,直接键入上面的命令很可能会有权限错误。原因是npm 需要把supervisor 安装到系统目录,需要管理员授权,需要使用以下命令
sudo npm install -g supervisor
接下来,使用supervisor 命令启动app.js:
$ supervisor app.