Node.Js的内部结构是什么?V8和Libuv的介绍


前言

自从2009 年 11 月 8 日在欧洲 JSConf 上介绍 Node.js 以来,它已经在整个科技行业得到广泛使用。Netflix、Uber 和 LinkedIn 等公司相信 Node.js 可以承受大量流量和并发性。

Node.js 对 Web 开发人员来说是一个有趣的工具。凭借其高水平的并发性,它已成为人们选择用于 Web 开发的工具的主要候选者。

一、Node.js是什么?

最常见的定义是它是JavaScript 语言的运行时。考虑到这一点,我们应该了解是什么导致了这个结论。
Node.js 通常被描述为 C++ 和 JavaScript 的组合。C++ 部分由运行低级代码的绑定组成,使访问连接到计算机的硬件成为可能。JavaScript 部分将 JavaScript 作为其源代码,并在该语言的流行解释器(称为V8引擎)中运行它。
有了这种理解,我们可以将 Node.js 描述为一种独特的工具,它结合了 JavaScript 和 C++,可以在浏览器环境之外运行程序。

二、Node.Js的核心依赖

我们尝试使用 command 从命令行运行 Node.js 程序(例如)时node index.js,我们正在调用 Node.js 运行时。如前所述,此运行时包含两个独立的依赖项,V8 和 libuv。
核心 Node.js 依赖项

V8 是由 Google 创建和维护的项目。它需要 JavaScript 源代码并在浏览器环境之外运行它。当我们通过node命令运行程序时,源代码由 Node.js 运行时传递给 V8 执行。

libuv 库包含允许对操作系统进行低级访问的 C++ 代码。V8 中默认不提供网络、写入文件系统和并发等功能,V8 是运行我们的 JavaScript 代码的 Node.js 的一部分。libuv 凭借其一组库,在 Node.js 环境中提供了这些实用程序以及更多功能。

Node.js 是将两个库结合在一起的粘合剂,从而成为一个独特的解决方案。在脚本的整个执行过程中,Node.js 了解将控制权传递给哪个项目以及何时传递。


总结

了解 Node JS 架构是很重要的。学习Node JS 如何在后台工作,了解软件的底层实现,而不是成为“码农”

如果本文对你有帮助,记得点个赞👍哟,也是对作者最大的鼓励🙇‍♂️。
如有不足之处可以在评论区👇多多指正,我会在看到的第一时间进行修正

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

技术吧

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值