《深入浅出Node.js》学习笔记 1-了解 Node

67 阅读1分钟

浏览器中除了 V8 作为 JavaScript 引擎外,还有 WebKit 布局引擎。 除了 HTML、WebKit和显卡这些UI相关基数没有支持外,Node 的结构与 Chrome 十分相似,它们都基于事件驱动和异步架构。

  • 浏览器通过事件驱动服务界面上的交互;
  • Node通过事件驱动服务I/O。

Node 的特点

异步 I/O、事件与回调函数、单线程、跨平台

单线程的缺点: 无法利用多核CPU、错误会引起整个应用退出、大量计算占用CPU导致无法继续调用异步I/O。

如何解决大量计算占用CPU无法继续调用:

  • 浏览器使用 Web Workers 处理的
  • Node 采用类似的思路 child_process。

Node 是基于 libuv(平台层架构) 实现跨平台的架构示意图

由于Node是单线程,Node是擅长I/O密集型的应用场景。