渐入Node.js

194 阅读1分钟

什么是Node.js?

Node.js是一套用来编写高性能网络服务器的JavaScript工具包。Node.js是一个可以快速构建网络服务及应用的平台,
该平台的构建是基于Chrome's JavaScript runtime。

Node.js如何工作?

目前该JavaScript引擎已用于其它项目的开发。第一个版本随着第一个版本的Chrome于2008年9月2日发布。
V8使用C++开发,并在谷歌浏览器中使用。在运行JavaScript之前,相比其它的JavaScript的引擎转换成字节码或解释执行,
V8将其编译成原生机器码(IA-32, x86-64, ARM, or MIPS CPUs),并且使用了如内联缓存(inline caching)等方法来提高性能。有了这些功能,
JavaScript程序在V8引擎下的运行速度媲美二进制程序。

Node.js能解决什么问题?


  1. 实现前后端分离。

  2. 对服务进行抗压、节流等。

  3. 脱离后端,单独进行开发。

  4. 进行前端整体api监控,事件监控。

  5. 不适合,cpu使用率较重、IO使用率较轻的应用。(人工智能)

Node.js好处 | 坏处?


  1. 搭建开发环境很快。

  2. javascript语言的代码,各种技术讨论、文档比较丰富,本身学起来比较容易。

  3. 前后端代码共享(各种第三方库)。

  4. 基于事件驱动、异步编程、单线程、非阻塞IO。

  5. 可利用Javascript进行后台开发。

  6. 社区非常活跃。

  7. 缺点:不适合做复杂的计算,单进程,只支持单核cpu,一旦进程崩掉,整个服务就挂掉。