Node.JS 是一个 JavaScript 运行环境. 它让 JavaScript 可以开发后端程序, 实现几乎其他后端语言实现的所有功能, 可以与 PHP,Java,Python,.NET,Ruby 等后端语言平起平坐.
Node.JS 的优势
1,Node.JS 语法完全是 JS 语法, 只要你懂 JS 基础就可以学会 Node.JS 后端开发
Node 打破了过去 JavaScript 只能在浏览器中运行的局面. 前后端编程环境统一, 可以大大降低开发成本.
2,Node.JS 超强的高并发能力
Node.JS 的首要目标是提供一种简单的, 用于创建高性能服务器及可在该服务器中运行的各种应用程序的开发工具.
首先让我们来看一下现在的服务器端语言中存在着什么问题. 在 Java,PHP 或者. NET 等服务器语言中, 会为每一个客户端连接创建一个新的线程. 而每个线程需要耗费大约 2MB 内存. 也就是说, 理论上, 一个 8GB 内存的服务器可以同时连接的最大用户数为 4000 个左右. 要让 web 应用程序支持更多的用户, 就需要增加服务器的数量, 而 Web 应用程序的硬件成本当然就上升了.
Node.JS 不为每个客户连接创建一个新的线程, 而仅仅使用一个线程. 当有用户连接了, 就触发一个内部事件, 通过非阻塞 I/O, 事件驱动机制, 让 Node.JS 程序宏观上也是并行的. 使用 Node.JS, 一个 8GB 内存的服务器, 可以同时处理超过 4 万用户的连接.
3, 实现高性能服务器
严格地说, Node.JS 是一个用于开发各种 Web 服务器的开发工具. 在 Node.JS 服务器中, 运行的是高性能 V8 JavaScript 脚本语言, 该语言是一种可以运行在服务器端的脚本语言.
那么, 什么是 V8 JavaScript 脚本语言呢? 该语言是一种被 V8 JavaScript 引擎所解析并执行的脚本语言. V8 JavaScript 引擎是由 Google 公司使用 C++ 语言开发的一种高性能 JavaScript 引擎, 该引擎并不局限于在浏览器中运行. Node.JS 将其转用在了服务器中, 并且为其提供了许多附加的具有各种不同用途的 API. 例如, 在一个服务器中, 经常需要处理各种二进制数据. 在 JavaScript 脚本语言中, 只具有非常有限的对二进制数据的处理能力, 而 Node.JS 所提供的 Buffer 类则提供了丰富的对二进制数据的处理能力.
另外, 在 V8 JavaScript 引擎内部使用一种全新的编译技术. 这意味着开发者编写的高端的 JavaScript 脚本代码与开发者编写的低端的 C 语言具有非常相近的执行效率, 这也是 Node.JS 服务器可以提供的一个重要特性.
4, 开发周期短, 开发成本低, 学习成本低
Node.JS 自身哲学, 是话最小的硬件成本, 追求更高的并发, 更高的处理性能.
来源: http://www.css88.com/qa/node-js/10624.html