谈起nodejs架构是一个很大的构成,作为一个初级前端,也只能浅聊一聊
首先第一个问题必须要回答,就是
nodejs是什么?
在我看来nodejs不是一个框架,不是一门语言,而是一个平台,在这个平台上可以使用多种技术组合,并且可以使用js开发后端应用。
那nodejs到底用到了哪些技术呢?
其用到了V8, libuv, 基于c/C++ 实现的http-parser 等
在网上发现了一张nodejs技术架构图

作为前端开发,用到最多的是nodejs 的api,这些api很多最后是由基于C/C++ 的模块完成的,而api和底层模块的通信由bindings实现,同时也可以自定义插件,进而拥有更多api能力。
同时这里有一个nodejs工作流程

我们的项目是跑在V8引擎上面的,同时v8引擎基于bindings和libuv中的模块进行交互。在libuv中有一个eventloop机制,对于这个机制,看这篇文章就够了

本文浅谈了Node.js的架构,指出Node.js是一个平台,利用V8引擎、libuv等技术实现后端应用。V8负责将JS代码编译执行,libuv提供跨平台的异步I/O支持。Node.js通过event loop管理事件,结合C/C++库处理DNS/http,利用bindings连接JS和C++,并提供了简化JS编程的标准库。
最低0.47元/天 解锁文章
1608

被折叠的 条评论
为什么被折叠?



