Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境。Node.js 使用了一个事件驱动、非阻塞式 I/O 的模型,使其轻量又高效。Node.js 的包管理器 npm,是全球最大的开源库生态系统。
官网:https://nodejs.org/en/
中文网:http://nodejs.cn/
Node.js是单线程异步非阻塞的,其优点是高性能、线程安全。避免了频繁创建、切换线程的开销,使执行速度更加迅速,资源占用小。
小技巧-使用supervisor
如果你有PHP开发经验,会习惯在修改PHP脚本后直接刷新浏览器以观察结果,而你在开发Node.js实现的HTTP应用时会发现,无论你修改了代码的哪一部分,都必须终止Node.js再重新运行才会奏效。这是因为Node.js只有在第一次引用到某部分时才回去解析脚本文件,以后都会直接访问内存,避免重复载入,而PHP则总是重新读取并解析脚本(如果没有专门的优化配置)。Node.js的这种设计虽然有利于提高性能,却不利于开发调试。supervisor可以监视你对代码的改动,并自动重启Node.js。
使用方法很简单,首先使用npm安装supervisor:
$ npm install -g supervisor
接下来,使用supervisor 命令启动script.js:
$ supervisor script.js
当代码被改动时,运行的脚本会被终止,然后重新启动。