您当前的位置:首页 > 电脑百科 > 程序开发 > 语言 > javascript

为什么Node.js 是后端开发的规则改变者

时间:2023-09-09 19:39:26  来源:51CTO  作者:



作者丨P. Rehan

编译丨诺亚

“Node.js有危险了!”

“任何能够自救的开发人员都应该尽快迁移到另一个后端环境!”JAVAScript的仇恨者说。

不用理会这些言论。Node.js将继续存在,并将成为后端Web开发的终极游戏规则改变者。

一、是什么让 Node.js 成为后端开发的宠儿?

在过去的后端开发时代,php是构建Web项目的主要工具。

但随着岁月流逝,在Web开发中PHP逐渐变得不那么合时宜,就像古怪又神经质的大叔,没有人知道它为什么还存在了。之后Ruby(基于RAIls)出现了,带着一箩筐的颠覆性的花哨技术,就像喝拿铁咖啡的潮人一样。我们都有过这样的“亲戚”,(可惜的是)我们并不想和他们在一起。Java就更不用提了。

直到几年前,一种新的、不那么时髦但却非常高效的东西进入了后端开发的世界,那就是——Node.js。

简单来说,Node.js是一个开源的跨平台JavaScript运行时环境,它让JavaScript成为与PHP、Python/ target=_blank class=infotextkey>Python、Perl、Ruby等服务端语言平起平坐的脚本语言。值得注意的是,Node.js在2017年改变了世界,这一年它得到了广泛的使用。

Node.js的历史是在打破Github上的4万星标记之前创建的。它只是在Web浏览器之外运行代码的小型JavaScript环境之一。但是,事实证明,Node.js正是后端开发界多年来一直在寻找的:一个能够处理大量流量的势不可挡的迷人环境。

以下功能使Node.js成为后端Web开发的典型代表:

其占用空间小,使其成为基于云的应用程序的出色开发工具。 由于它的V8 JavaScript引擎,它几乎和光一样快。 应用程序开发具有很强的可扩展性和响应性。 它的社区中有近10万名活跃的开发人员。 它拥有无穷无尽的 API 和无限的生态系统,允许你创建从基本的 1-2-3 应用程序到火箭科学级微服务结构的所有内容。

二、奥秘是什么?

试想:一个后端开发环境如何在保持健壮性和响应能力的同时管理如此多的查询?流经其血管的秘密成分是什么?

Node.js除了使用与google Chrome相同的引擎外,还采用事件驱动的非阻塞I/O方法。

正是它推动.NETflix(流媒体服务)、Discord机器人(聊天机器人)和8 Ball Pool(在线游戏)等实时应用程序的发展。

将事件驱动的非阻塞 I/O 模型想象成一个超级英雄,你将其命名为 Node-Man。

他的独特能力是处理多项任务并毫不费力地救人。他的能力来自 I/O 模型,该模型可以处理多个请求,而无需等待一个请求完成后再进行下一个请求。

这就是节点人超越闪电侠并击败钢铁侠的方式。

三、被误解的Node.js:五个必须了解的真相

以下是关于 Node.js 的五个常见误解:

1. Node.js 不是大型商业应用程序的最佳选择,因为它缺乏可扩展性。上次我们看到,每个组织都在尝试将其应用程序提升到新的性能高度,而Node.js将提供这一点。

2. PayPal,沃尔玛,Trello、领英,以及Netflix,都声称它仅适用于小型应用程序。它们是一些最复杂的应用程序,使用 Node.js 来处理请求,并且运行时几乎没有停机时间。

3. 它仅用于Web开发。事实上,Node.js 非常适合桌面应用程序、物联网设备和命令行工具。Slack和Visual Studio Code都是Electron-Node.js强大组合的产品。Gatsby和Yarn是命令行工具,用于创建在Node.js上运行的快速和安全的网站

4. CPU 密集型任务会破坏 Node.js。当然,这是一个单线程环境,性能会受到请求数量的影响。但是,你可以通过创建任务队列或生成特定于任务的异步子进程来解决此限制。

5. Node.js 允许在最值得信赖的库上运行时进行输入验证和清理,因此它不是一个很好的安全替代方案。Node.js 支持 TLS/SSL 通信。它对通信进行加密,并保护它免受漏洞和攻击。

四、影响后端开发未来的Node.js 趋势

除了可扩展性和闪电般的效率之外,Node.js最大的优势是其简单的学习曲线。这就像在掌握节点后玩连接节点的游戏。

由于这些特性,GraphQL、无服务器计算、微服务架构和渐进式Web应用程序(PWA)等Web开发概念正变得越来越流行。

小型、独立的服务时代即将到来,每个服务都是业务功能所独有的,通过 API 进行交互,并从单个共享代码库运行。

模块化和可扩展的Web应用程序开发时代即将开启。

五、一年后Node.js会在哪里?

自2009年发布以来,Node.js已经走了很长一段路,但对于这个JavaScript跨平台来说,最令人兴奋的旅程还没有到来。

可以展望的是,Node.js最终将扬帆远航,逃离后端开发的水域。它将跟踪机器学习、人工智能、物联网设备和桌面应用程序的发展,探索其中的未知领域。

如果认为这些领域不受其他语言和库的影响,那将是愚蠢的。

GO、Deno、ASP.net和Flask等后端框架/语言对Node.js的采用和生存构成了威胁。

即使存在风险,未来也是光明和繁荣的,就像 Node.js API 库一样。         

参考链接:https://pinjarirehan.medium.com/why-node-js-is-the-ultimate-game-changer-for-backend-development-26415839bbe2



Tags:Node.js   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,不构成投资建议。投资者据此操作,风险自担。如有任何标注错误或版权侵犯请与我们联系,我们将及时更正、删除。
▌相关推荐
理解 Node.js 中的事件循环
你已经使用 Node.js 一段时间了,构建了一些应用程序,尝试了不同的模块,甚至对异步编程感到很舒适。但是有些事情一直在困扰着你——事件循环(Event Loop)。如果你像我...【详细内容】
2024-01-05  Search: Node.js  点击:(111)  评论:(0)  加入收藏
让Node.js加速你的网络应用开发之旅
Node.js 是一个基于Chrome V8 引擎的JavaScript运行时,用于构建高性能、可伸缩的网络应用。它的出现在很大程度上改变了后端开发的方式,并成为了现代Web开发中不可或缺的一部...【详细内容】
2023-12-13  Search: Node.js  点击:(169)  评论:(0)  加入收藏
告别Node.js版本困扰,轻松切换开发环境!
最近,在下载别人的开源项目进行学习的时候,总是因为 Node 环境问题导致没法依赖无法正常安装,因为人家开源项目限制了一定要高于某个版本,差点劝退了我。Node版本限制因为平时偶...【详细内容】
2023-11-08  Search: Node.js  点击:(275)  评论:(0)  加入收藏
19 种常见的 JavaScript 和 Node.js 错误
译者 | 刘汪洋审校 | 重楼速度、性能和响应性在 Web 开发中起着至关重要的作用,尤其是在使用 JavaScript 和 Node.js 开发时尤为重要。如果一个网站响应缓慢或界面卡顿,就会让...【详细内容】
2023-11-03  Search: Node.js  点击:(192)  评论:(0)  加入收藏
通过这个技术,浏览器可以运行Node.js、Rust、Python、PHP、C++、Java代码了!
近日,WebContainers 发布重要更新,WASI(WebAssembly 系统接口)已全面集成到 WebContainers 中。这是一个重要里程碑,它扩大了可以使用浏览器执行的操作,是 Web 开发的全新范例,允许...【详细内容】
2023-10-13  Search: Node.js  点击:(276)  评论:(0)  加入收藏
为什么Node.js 是后端开发的规则改变者
作者丨P. Rehan编译丨诺亚“Node.js有危险了!”“任何能够自救的开发人员都应该尽快迁移到另一个后端环境!”JavaScript的仇恨者说。不用理会这些言论。Node.js将继续存在,并...【详细内容】
2023-09-09  Search: Node.js  点击:(247)  评论:(0)  加入收藏
Node.js 终于原生支持 .env 文件了!
近日,Node.js 团队核心成员 Ulises Gascón 在社交平台表示,Node.js 20.6 版本将原生支持 .env 文件,该版本计划于 8 月 28 日发布。下面就来看看 .env 文件是什么,有什么...【详细内容】
2023-08-29  Search: Node.js  点击:(385)  评论:(0)  加入收藏
将 Node.js 应用程序容器化的七种方法
本文列出了七种容器化 node.js 应用程序的方法,让我们简要地看一下它们。在过去的五年里,Node.js 一直是严肃程序员的最爱。最大吞吐量的 JavaScript 运行时环境是一个免费的...【详细内容】
2023-03-24  Search: Node.js  点击:(261)  评论:(0)  加入收藏
十个优质的基于Node.js的CMS 内容管理平台
内容管理系统 (「CMS」) 使没有强大技术背景的人也能够轻松发布内容。我们可以使用 「CMS」 来管理我们的内容和交付。市面上有不同类型的 「CMS」,它们执行不同的目的并具有...【详细内容】
2023-03-03  Search: Node.js  点击:(278)  评论:(0)  加入收藏
Node.js 是如何跑起来的
本文为来自 字节跳动-国际化电商-S 项目团队 成员的文章,已授权 ELab 发布。一个 TCP 连接的案例​TCP 服务端​const net = require('net');const server = new net...【详细内容】
2023-03-03  Search: Node.js  点击:(162)  评论:(0)  加入收藏
▌简易百科推荐
17 个你需要知道的 JavaScript 优化技巧
你可能一直在使用JavaScript搞开发,但很多时候你可能对它提供的最新功能并不感冒,尽管这些功能在无需编写额外代码的情况下就可以解决你的问题。作为前端开发人员,我们必须了解...【详细内容】
2024-04-03  前端新世界  微信公众号  Tags:JavaScript   点击:(4)  评论:(0)  加入收藏
你不可不知的 15 个 JavaScript 小贴士
在掌握如何编写JavaScript代码之后,那么就进阶到实践——如何真正地解决问题。我们需要更改JS代码使其更简单、更易于阅读,因为这样的程序更易于团队成员之间紧密协...【详细内容】
2024-03-21  前端新世界  微信公众号  Tags:JavaScript   点击:(25)  评论:(0)  加入收藏
又出新JS运行时了!JS运行时大盘点
Node.js是基于Google V8引擎的JavaScript运行时,以非阻塞I/O和事件驱动架构为特色,实现全栈开发。它跨平台且拥有丰富的生态系统,但也面临安全性、TypeScript支持和性能等挑战...【详细内容】
2024-03-21  前端充电宝  微信公众号  Tags:JS   点击:(23)  评论:(0)  加入收藏
构建一个通用灵活的JavaScript插件系统?看完你也会!
在软件开发中,插件系统为应用程序提供了巨大的灵活性和可扩展性。它们允许开发者在不修改核心代码的情况下扩展和定制应用程序的功能。本文将详细介绍如何构建一个灵活的Java...【详细内容】
2024-03-20  前端历险记  微信公众号  Tags:JavaScript   点击:(20)  评论:(0)  加入收藏
对JavaScript代码压缩有什么好处?
对JavaScript代码进行压缩主要带来以下好处: 减小文件大小:通过移除代码中的空白符、换行符、注释,以及缩短变量名等方式,可以显著减小JavaScript文件的大小。这有助于减少网页...【详细内容】
2024-03-13  WangLiwen    Tags:JavaScript   点击:(2)  评论:(0)  加入收藏
跨端轻量JavaScript引擎的实现与探索
一、JavaScript 1.JavaScript语言JavaScript是ECMAScript的实现,由ECMA 39(欧洲计算机制造商协会39号技术委员会)负责制定ECMAScript标准。ECMAScript发展史: 2.JavaScript...【详细内容】
2024-03-12  京东云开发者    Tags:JavaScript   点击:(2)  评论:(0)  加入收藏
面向AI工程的五大JavaScript工具
令许多人惊讶的是,一向在Web开发领域中大放异彩的JavaScript在开发使用大语言模型(LLM)的应用程序方面同样大有价值。我们在本文中将介绍面向AI工程的五大工具,并为希望将LLM...【详细内容】
2024-02-06    51CTO  Tags:JavaScript   点击:(52)  评论:(0)  加入收藏
JS小知识,使用这6个小技巧,避免过多的使用 if 语句
最近在重构我的代码时,我注意到早期的代码使用了太多的 if 语句,达到了我以前从未见过的程度。这就是为什么我认为分享这些可以帮助我们避免使用过多 if 语句的简单技巧很重要...【详细内容】
2024-01-30  前端达人  今日头条  Tags:JS   点击:(56)  评论:(0)  加入收藏
18个JavaScript技巧:编写简洁高效的代码
本文翻译自 18 JavaScript Tips : You Should Know for Clean and Efficient Code,作者:Shefali, 略有删改。在这篇文章中,我将分享18个JavaScript技巧,以及一些你应该知道的示例...【详细内容】
2024-01-30  南城大前端  微信公众号  Tags:JavaScript   点击:(65)  评论:(0)  加入收藏
使用 JavaScript 清理我的 200GB iCloud,有了一个意外发现!
本文作者在综合成本因素之下,决定用 Java 脚本来清理一下自己的 iCloud,结果却有了一个意外发现,即在 iCloud 中上传同一个视频和删除此视频之后,iCloud 的空间并不一致,这到底是...【详细内容】
2024-01-11    CSDN  Tags:JavaScript   点击:(97)  评论:(0)  加入收藏
站内最新
站内热门
站内头条