为什么选择Node.js

为什么选择Node.js

十月 03, 2018

一、Node.js介绍

Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境。Node.js 使用了一个事件驱动、非阻塞式 I/O 的模型,非常适合在分布式设备上运行数据密集型的实时应用。它让 JavaScript 可以开发后端程序,实现几乎所有其他后端语言所能实现的功能。

二、Node.js的优势

1. Node.js 语法完全是 JS 语法

只要有 JS 基础就可以学会 Node.js 后端开发。前后端编程环境统一,可以大大降低开发成本。

2. Node.js 超强的高并发能力

现在的服务器端语言中存在着一些问题。在 Java、PHP 或者 .net 等服务器端语言中,会为每一个客户端的连接创建一个新的线程。而每个线程需要耗费大约 2MB 内存。也就是说理论上,一个 8GB 内存的服务器可以同时连接的最大用户数为四千个左右。要让 Web 应用程序支持更多的用户,硬件成本当然就上升了。
而 Node.js 不为每个连接创建一个新的线程,仅仅使用一个线程。当有用户连接了,就触发一个内部事件,通过非阻塞 I/O 和事件驱动机制让 Node.js 程序宏观上也是并行的。使用 Node.js,一个 8GB 内存的服务器,可以同时处理超过四万用户的连接。

3. 实现高性能服务器

在服务器中经常需要处理各种二进制数据。但 JavaScript 只具有非常有限的对二进制数据的处理能力,而 Node.js 所提供的 Buffer 类则大大增强了其处理能力。另外在 V8 引擎内部使用了一种全新的编译技术。这使 JavaScript 代码与 C 语言代码具有非常相近的执行效率。

三、Node.js 适合做什么

9