Node.js概述
Node.js最重要的特性:通过单线程实现异步处理环境
- Node.js解决的问题:
Node.js修改了客户端连接服务器端的连接方法,不需要为每个客户端连接创建一个新的线程,而是为每个客户端连接触发一个在
Node.js内部的进行处理的事件。因此,当需要使web应用程序能够支持大量用户的并发连接时,可以考虑使用Node.js.
- 实现高性能服务器
在Node.js服务器中,运行的是高性能V8JavaScript脚本语言(Goole公司开发的高性能JavaScript引擎),编译效率更高。
- 非阻塞型I/O及事件环制
在传统的单线程处理机制中,在执行访问数据库代码之后,整个线程都会暂停,等待数据库返回查询结果之后才能执行后面的代码。
也就是说I/O操作阻塞了代码执行,而Node.js采用非阻塞I/O机制,因此在执行访问数据库的代码之后将立即转而执行后面的代码,把数据库
返回结果的处理代码放到回调函数中执行,从而提高程序的执行效率。
在Node.js中,一个时刻只能执行一个回调函数,但是在执行一个事件回调函数的中途可以转而处理其他事件,然后返回继续执行原事件的执行函数,
这种处理机制称为事件环机制。