(转载自:http://www.cnblogs.com/CodeGuy/archive/2013/04/27/3043040.html)
NodeJS”热部署“代码,实现动态调试
开发中遇到的问题
如果你有 PHP 开发经验,会习惯在修改 PHP 脚本后直接刷新浏览器以观察结果,而你在开发 Node.js 实现的 HTTP 应用时会发现,无论你修改了代码的哪一部份,都必须终止Node.js 再重新运行才会奏效。这是因为 Node.js 只有在第一次引用到某部份时才会去解析脚本文件,以后都会直接访问内存,避免重复载入,而 PHP 则总是重新读取并解析脚本(如果没有专门的优化配置)。Node.js的这种设计虽然有利于提高性能,却不利于开发调试,因为我们在开发过程中总是希望修改后立即看到效果,而不是每次都要终止进程并重启。
这时若你修改了js文件,或是调试功能,或是增加功能。这时需要重新发布该服务,每次修改都需要执行以下两步:
1 control+c
2 node server.js
很不爽!因此有人开发了一个自动发布(热发布)的工具,你只需要在修改文件后保存,它就能自动替你发布,这就是所谓的热部署。就像tomcat或websphere等一些主流的web应用服务器那样保存即热部署。下面将介绍两个NodeJS中的开源热部署工具。
(1)supervisor
supervisor 可以帮助你实现这个功能,它会监视你对代码的改动,并自动重启 Node.js。使用方法很简单,首先使用 npm 安装 supervisor:
$ npm install -g supervisor
如果你使用的是 Linux 或 Mac,直接键入上面的命令很可能会有权限错误。原因是 npm需要把 supervisor 安装到系统目录,需要管理员授权,可以使用 sudo npm install -g supervisor 命令来安装。
接下来,使用 supervisor 命令启动 app.js:
$ supervisor app.js
命令行窗口会显示启动成功信息,即开启了代码监听:
当代码被改动时,运行的脚本会被终止,然后重新启动。在终端中显示的结果如下:
supervisor 这个小工具可以解决开发中的调试问题。
github上的主页:https://github.com/isaacs/node-supervisor
(2)hotnode
首先需要安装,打开NodeJS命令行工具,输入sudo npm -g install hotcode进行全局安装
安装成功后,可以随时查看它的版本号,在命令行输入:hotcode -v
使用很简单,执行命令:hotcode server.js,输出信息如下:
每次修改都会有一条日志打印出来。
github上的主页:https://github.com/saschagehlich/hotnode
相关推荐
nodejs的一个小代码,使用nodejs代码实现图片的上传
椭圆加密国密SM2 Nodejs实现源代码,密钥生成,从私钥计算公钥,签名,验签,同时包含secp256和secp192
nodejs代码资源,主要用于统计前端项目中的代码行数、空行行数、注释行数、以及注释率,可通过目录或文件以及文件格式进行过滤筛选,统计出想要的代码文件的行数。 资源代码非常简单方便,代码清晰明了,注释也很...
nodejs本身的效率还是比较慢的,部分代码可写成C++的模块,然后由nodejs调用。此代码编译通过并且可运行。
一个用NodeJS实现的Ftp Servce
nodejs数据库访问代码生成工具,数据库为关系型数据库mysql,ORM框架为sequelize,模板为ejs。入口文件在start.js中。
nodejs文档以及代码
NodeJS
nodejs基于express框架搭建项目的代码,直接通过127.0.0.1:3000就可以直接访问
基于Nodejs和html实现webrtc通信项目源码(代码精简好用).zip基于Nodejs和html实现webrtc通信项目源码(代码精简好用).zip基于Nodejs和html实现webrtc通信项目源码(代码精简好用).zip基于Nodejs和html实现webrtc通信...
模块热替换 适用情况 首先说明,此情况不具备普遍性。若你的情况与笔者类似那么希望这篇文章能够帮到你。 我的项目情况是这样的:用node.js做后台,ejs做模板引擎(即整个页面是一个ejs文件)由node.js将数据渲染...
nodejs服务器部署在服务器,外网不能访问问题
NodeJS+Vue实现支付宝支付(沙箱)完整流程
nodejs学些代码参考,包含上传,xlsx解析
帮助使用eclipse进行nodejs程序开发人员进行nodejs程序调试断点跟踪
nodejs 图片合成 源代码实例
小程序源码 明星图(含NODEJS后端) (代码源)小程序源码 明星图(含NODEJS后端) (代码源)小程序源码 明星图(含NODEJS后端) (代码源)小程序源码 明星图(含NODEJS后端) (代码源)小程序源码 明星图(含NODEJS后端...
nodejs开发的一个项目,源代码附上,包括部署方式里面都有!欢迎下载
Atom-xatom-debug-nodejs.zip,用于xatom调试的nodejs调试器插件xatom nodejs调试器,atom是一个用web技术构建的开源文本编辑器。