Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行时环境。
在咱们日常开发中,Node.js 应用场景越来越多,大到服务端我的项目,小到开发工具脚本,所以把握 Node.js 一些基础知识是十分有必要的。
明天次要聊一下 Node.js 中 LTS 和 Current 的区别和如何抉择适合的版本。
一、版本介绍
在官网上能够看到 Node.js 有 LTS 系列和 Current 系列,别离对应不同的最新版本号。
(本图来自:Nodejs)
Node.js 的版本号命名遵循语义化版本(Semantic Versioning),对立版本号示意规定,该规定规定了版本号如何示意,如何减少,如何进行比拟,不同的版本号意味着什么。
版本格局:主版本号. 次版本号. 订正号
- 主版本号(major):当你做了不兼容的 API 批改,
- 次版本号(minor):当你做了向下兼容的功能性新增,能够了解为 Feature 版本,
- 订正号(patch):当你做了向下兼容的问题修改,能够了解为 Bug fix 版本。
二、LTS 版本
LTS 版本全称 Long Time Support,即 长期反对版本 ,重点在于稳定性和安全性,每个 LTS 版本的大版本号都是 偶数,倡议首次下载以及后续的每次降级都抉择 LTS 版本,缩小开发过程中呈现的未知问题。
LTS 版本有 3 个阶段的生命周期:
生命周期 | 含意 | 阐明 |
---|---|---|
Active | 沉闷阶段 | 每个从 Current 进入 LTS 的偶数版本,都会有 18 个月的工夫被踊跃保护和降级。 |
Maintenance | 维护阶段 | 沉闷阶段达到 18 个月后,会进入为期 12 个月的维护阶段,期间只会进行谬误修复和安全补丁。 |
End of Life | 完结阶段 | 简称 EOL,在维护阶段达到期限之后,该版本进入 EOL 阶段,将不再保护,也就是说,每个 LTS 版本最长会有 30 个月的保护工夫,之后将不再进行保护。 |
版本的生命周期图(2022-2025):
(图片来自:Node.js)
三、Current 版本
Current 即最新公布版本,该版本专一于必要性能的开发和现有 API 的欠缺,具备较短的寿命和更频繁的代码更新。
你能够在该版本体验到最新性能,也能够能遇到各种意想不到的问题和兼容性要解决。
通常 Current 版本会在每 6 个月公布一次大版本(非凡状况除外):
- 每年 4 月份公布新的偶数版本;
- 每年 10 月份公布新的奇数版本。
(图片来自:Node.js releases)
具体的版本更新记录,能够查看 Node.js releases。
四、如何抉择适合的版本?
- 应用 LTS 版本
个别用于生产环境,重点在于稳固,如果你须要稳定性并领有简单的生产环境(例如中型或大型企业),倡议应用 LTS 版本。
- 应用 Current 版本
个别用于测试环境,如果你是为了尝试新的版本和新个性(比方 ECMAScript 新个性),或者可能在不烦扰环境的状况下疾速轻松地降级版本,倡议应用 Current 版本。
五、总结
本文次要聊一下 Node.js 中 LTS 和 Current 的区别和如何抉择适合的版本,在理论开发中,并不需要及时更新到最新版本,咱们齐全能够依照我的项目技术栈依赖的最低 Node.js 版本决定是否降级,如果条件容许,还是倡议至多把大版本升级到最新的 LTS 版本。