Node.js 简介

Node.js 到底是什么?它涉及到那些组件?它具有哪些优劣势?本文通过梳理相关资料,给出这些问题的答案。

Node.js 是什么

Node.js 是一个基于 V8 引擎的 JavaScript 运行环境。通过 Node.js ,开发者可以利用 JavaScript 语言构建基于服务端的后台应用。

Node.js 与 V8 引擎

V8 是一款由 Google 开发的开源 JavaScript 引擎 ,Chrome 就采用 V8 作为其内置的 JavaScript 引擎 。V8 由 C++ 编写而成,且全面支持 ECMAScript 标准

V8 的强大之处在于,它不仅能够单独运行,同时能够嵌入在任何 C++ 应用中。

没错,Node.js 本身也是通过 C++ 实现的。Node.js 通过嵌入 V8 ,让自身有了解码 JavaScript 脚本的能力。

同时,Node.js 采用 C++ 进一步拓展了 V8 的功能,让 JavaScript 不再局限于 ECMAScript 标准,而是有了处理请求、文件处理、连接数据库等功能。从而让这门脚本语言有了构建服务端应用的能力。

Node.js 的优劣

Node.js 具备许多高性能 Web 服务器的优势:

异步 I/O 减少了 CPU 等待时间,极大地提高了应用的并发性,且应用非常容易实现水平和垂直扩展

同时,Node.js的出现,让开发者只需使用 JavaScript 一门语言,就可以实现一个网络应用,引申出了“ MEAN ”这种,由一种语言构建的前后端技术栈。

但是 Node.js 仍然有着一些局限性。

由于 Node.js 本身仍然是单线程的,因此不适合 CPU 密集型业务,否则会导致异步任务响应出现问题。

参考链接

What is Node.js? An explanation too late

Understanding How the Chrome V8 Engine Translates JavaScript into Machine Code

What is the relationship between Node.js and V8?

Node.js – Wikipedia

Why to Use Node.js: Pros and Cons of Choosing Node.js for Back-end Development

The Positive and Negative Aspects of Node.js Web App Development

发表评论

电子邮件地址不会被公开。 必填项已用*标注