前端笔记之NodeJS(一)初识NodeJS&内置模块&特点
前端笔记之NodeJS(一)初识NodeJS&内置模块&特点 一、 NodeJS 简介 NodeJS 是开发服务器后台的东西,和 PHP 、 JavaEE 、 python 类似,和传统的浏览器的关注 DOM 的 JS 完全不同,将 JavaScript 触角伸到了服务器端。内核是 Chrome 浏览器的 V8 引擎,解析 JavaScript 的效率是非常快的。 创始人。 在不升级服务器配置的情况下,如何用软件手段来提升服务器性能: Ryan Dahl 大致的感觉到了解决问题的关键是要通过 事件驱动和异步 I/O 来达成目的。 传统的服务器模型:当我们做 I/O 操作的时候( I 表示读, O 表示写), CPU 被磁盘操作阻塞了,此时我们称这叫做“同步 I/O ( synchronous I/O ),阻塞 I/O ( blocking I/O )”。 CPU 会经常对磁盘驱动发出 I/O 命令 此时磁盘特别忙,CPU 就歇着了。造成了资源浪费。上图这种模式叫做“同步 I/O ”。 同步(synchronous):当系统遇见了一个需要耗费大量时间的事情的时候,选择死等。 异步(Asynchronous):当系统遇见了一个需要耗费大量时间的事情的时候,不死等,先做后面的事情,耗时事情做完之后,执行回调函数。 用 PHP 做一个例子:下面程序中红色部分是 I/O 操作,此时 CPU