nodejs有哪些缺点

nodejs的缺点:1、不适合CPU密集型应用;2、只支持单核CPU,不能充分利用CPU;3、可靠性低;4、开源组件库质量参差不齐,更新快,向下不兼容;5、Debug不方便,错误没有stack trace。

nodejs有哪些缺点

本教程操作环境:windows7系统、nodejs 12.19.0版、Dell G3电脑。

Node.js本质上是一个JavaScript的运行环境。

Node.js是一个基于Chrome JavaScript运行时建立的平台, 用于方便地搭建响应速度快、易于扩展的网络应用。Node.js使用事件驱动,非阻塞I/O 模型而得以轻量和高效,非常适合在分布式设备上运行数据密集型的实时应用。

nodejs的缺点:

1、不适合CPU密集型应用;

CPU密集型应用给Node带来的挑战主要是:由于JavaScript单线程的原因,如果有长时间运行的计算(比如大循环),将会导致CPU时间片不能释放,使得后续I/O无法发起;

解决方案:分解大型运算任务为多个小任务,使得运算能够适时释放,不阻塞I/O调用的发起;

2、只支持单核CPU,不能充分利用CPU

3、可靠性低,一旦代码某个环节崩溃,整个系统都崩溃

原因:单进程,单线程

4、开源组件库质量参差不齐,更新快,向下不兼容

5、Debug不方便,错误没有stack trace

适合NodeJS的场景

1. RESTful API

这是NodeJS最理想的应用场景,可以处理数万条连接,本身没有太多的逻辑,只需要请求API,组织数据进行返回即可。它本质上只是从某个数据库中查找 一些值并将它们组成一个响应。由于响应是少量文本,入站请求也是少量的文本,因此流量不高,一台机器甚至也可以处理最繁忙的公司的API需求。

2. 统一Web应用的UI层

目前MVC的架构,在某种意义上来说,Web开发有两个UI层,一个是在浏览器里面我们最终看到的,另一个在server端,负责生成和拼接页面。

不讨论这种架构是好是坏,但是有另外一种实践,面向服务的架构,更好的做前后端的依赖分离。如果所有的关键业务逻辑都封装成REST调用,就意味着在上层 只需要考虑如何用这些REST接口构建具体的应用。那些后端程序员们根本不操心具体数据是如何从一个页面传递到另一个页面的,他们也不用管用户数据更新是 通过Ajax异步获取的还是通过刷新页面。

3. 大量Ajax请求的应用

例如个性化应用,每个用户看到的页面都不一样,缓存失效,需要在页面加载的时候发起Ajax请求,NodeJS能响应大量的并发请求。  总而言之,NodeJS适合运用在高并发、I/O密集、少量业务逻辑的场景。

【推荐学习:《nodejs 教程》】

以上就是nodejs有哪些缺点的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2629801.html

(0)
上一篇 2025年3月7日 02:18:42
下一篇 2025年2月23日 02:49:55

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • 带你深入了解HTTP模块

    本篇文章带大家学习http模块相关内容,为写接口做基础,希望对大家有所帮助! 一、Web服务器 什么是web服务器? 当应用程序(客户端)需要某一个资源时,可以向一个台服务器,通过Http请求获取到这个资源;提供资源 的这个服务器,就是一个…

    2025年3月7日 编程技术
    200
  • 如何使用Node.js开发一个简单的电子商务平台

    随着电子商务的飞速发展,越来越多的人开始关注如何通过技术手段来搭建自己的电子商务平台。Node.js作为一种快速、高效、轻量级的JavaScript运行环境,逐渐成为开发电子商务平台的首选技术。那么,如何使用Node.js开发一个简单的电子…

    2025年3月7日
    200
  • nodejs属于前端还是后端

    Node.js 可用于前端和后端开发。前端开发:构建交互式 Web 页面,使用 JavaScript 框架,提供对 DOM 和事件驱动的编程的访问。后端开发:处理服务器端逻辑、数据库交互和 RESTful API,事件循环机制使其适合处理多…

    2025年3月7日
    200
  • nodejs是啥语言

    Node.js 是一种服务器端 JavaScript 运行时环境,基于 Google 的 V8 引擎,专注于服务器端 JavaScript 运行,事件驱动,具有非阻塞 I/O,支持模块化和跨平台运行,广泛用于 Web 应用程序、API、数据…

    2025年3月7日
    200
  • nodejs怎么实现前后端分离

    Node.js 中实现前后端分离的步骤:创建后端服务器,处理逻辑和数据管理。定义提供数据访问的 REST API。使用 JavaScript 框架创建前端应用程序。建立后端和前端之间的通信机制。在后端实施数据验证和安全性措施。部署后端服务器…

    2025年3月7日
    200
  • nodejs如何写接口

    Node.js 中接口编写包含以下步骤:创建 Express 路由。定义路由路径和方法(GET/POST 等)。处理请求并执行业务逻辑。使用 res.send() 或 res.json() 发送响应。定义请求和响应数据结构。验证请求参数有效…

    2025年3月7日
    200
  • nodejs学到什么程度可以工作

    是的,掌握 Node.js 基础即可胜任入门级工作,所需技能包括:基本 Node.js 概念使用 Express.js 构建 Web 应用程序前端技术与数据库交互版本控制系统 Node.js 入门程度 是否可以工作? 是,在掌握 Node.…

    2025年3月7日
    200
  • nodejs适合做什么

    Node.js 适于构建实时应用程序、API 服务器、数据流处理管道、微服务、命令行工具和网络爬虫,因其事件驱动的非阻塞 I/O 模型和易于扩展的模块化设计。 nodejs 适用的场景 Node.js 是一种基于事件驱动的服务器端 Java…

    2025年3月7日
    200
  • nodejs 前端 后端 怎么交互

    答案: Node.js 提供了多种前端和后端交互方式,包括 HTTP 请求、Socket.IO、GraphQL 和 RESTful API。详细描述:HTTP 请求: 广泛使用,适用于不需要实时通信的应用程序。Socket.IO: 适用于需…

    2025年3月7日
    200
  • nodejs如何与前端交互

    Node.js与前端交互可以通过以下五种主要方式实现:HTTP 请求和响应:创建和响应 HTTP 请求。WebSocket:建立持久连接,实现双向实时通信。RESTful API:使用 HTTP 协议设计和开发 Web 服务。GraphQL…

    2025年3月7日
    200

发表回复

登录后才能评论