返回顶部
首页 > 资讯 > 精选 >Nodejs能够应用于什么场景
  • 875
分享到

Nodejs能够应用于什么场景

2023-06-15 06:06:23 875人浏览 八月长安
摘要

这篇文章给大家分享的是有关nodejs能够应用于什么场景的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Apache 的多线程高并发模式优点:支持多线程并发缺点:阻塞什么是线程线程是可以独立运行的最小的 CPU 单

这篇文章给大家分享的是有关nodejs能够应用于什么场景的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

Apache 的多线程高并发模式

优点:支持多线程并发

缺点:阻塞

什么是线程

线程是可以独立运行的最小的 CPU 单位,可以在同一个进程里并发运行,共享该进程下的内存地址空间。

当不同的线程需要占用同一个变量时,根据先到先得的原则,先到的线程在运作时,后来的线程只能在旁边等待,也就是加入到了阻塞排队序列。就造成了线程阻塞。

类似场景:银行柜台办理业务

NodeJS 的异步 I/O 原理

优点:高并发(最重要的优点)、适合 I/O 密集型应用

缺点:

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

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

  • 可靠性低,一旦代码某个环节崩溃,整个系统都崩溃
    原因:单进程、单线程
    解决方案:
    (1)Nnigx 反向代理,负载均衡,开多个进程,绑定多个端口;
    (2)开多个进程监听同一个端口,使用cluster模块
    (3)线上使用 PM2 管理进程,出现问题自动重启项目

  • Debug 不方便,错误没有 stack trace

Nodejs 基于事件循环,每一条 NodeJS 的逻辑写在回调函数里面,回调函数在返回之后异步执行。【推荐学习:《nodejs 教程》】

NodeJS 不是没有阻塞,而是阻塞不发生在后续回调的流程,而会发生在 NodeJS 本身对逻辑的计算和处理。

NodeJS 它的所有 I/O、网络通信等比较耗时的操作,都可以交给 worker threads 执行再回调,所以很快。但 CPU 的正常操作,它只能自己操作。

类似场景:排队点餐后叫号取餐。

NodeJS 的应用场景

NodeJS 处理并发的能力强,但处理计算和逻辑的能力反而很弱。

因此,我们把复杂的逻辑运算搬到前端(客户端)完成,而 NodeJS 只需要提供异步 I/O,这样就可以实现对高并发的高性能处理。

RESTful API

这是 NodeJS 最理想的应用场景,可以处理数万条连接,本身没有太多的逻辑,只需要请求 api,组织数据进行返回即可。

它本质上只是从某个数据库中查找一些值并将它们组成一个响应。

由于响应是少量文本,入站请求也是少量的文本,因此流量不高,一台机器甚至也可以处理最繁忙的公司的 API 需求。

大量 Ajax 请求的应用

实时聊天、客户端逻辑强大的单页 APP,具体的例子比如说:本地化的在线音乐应用,本地化的在线搜索应用,本地化的在线 APP 等。

Apache 适用场景

Apache 由于其多线程高并发共享内存地址空间的特性,那就意味着如果服务器足够强大,处理器足够高核,Apache 的运作将会非常良好,所以适用于(并发)异步处理相对较少,后台计算量大,后台业务逻辑复杂的应用程序。

感谢各位的阅读!关于“Nodejs能够应用于什么场景”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

--结束END--

本文标题: Nodejs能够应用于什么场景

本文链接: https://lsjlt.com/news/278418.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Nodejs能够应用于什么场景
    这篇文章给大家分享的是有关Nodejs能够应用于什么场景的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Apache 的多线程高并发模式优点:支持多线程并发缺点:阻塞什么是线程线程是可以独立运行的最小的 CPU 单...
    99+
    2023-06-15
  • TensorFlowLite是什么它用于什么应用场景
    TensorFlow Lite是谷歌开发的一种轻量级的深度学习框架,是TensorFlow的移动和嵌入式设备版本。它专门设计用来在资...
    99+
    2024-03-01
    TensorFlow
  • node常用于什么场景
    Node.js 在许多不同的场景中都有广泛的应用。以下是 Node.js 常用的一些场景:服务器端开发:Node.js 的高性能和事件驱动的非阻塞 I/O 模型使其非常适合构建服务器端应用程序。它可以用于开发 Web 应用、API 服务、实...
    99+
    2023-07-10
  • mongodb适用于什么场景
    mongodb 适用于以下场景:频繁的数据写入和更新大量非结构化数据水平扩展高并发性地理空间数据实时数据分析移动和 web 应用程序 MongoDB 的适用场景 MongoDB 是一种...
    99+
    2024-04-02
  • Promise.race()方法功能及应用场景是什么
    这篇文章主要介绍了Promise.race()方法功能及应用场景是什么的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Promise.race()方法功能及应用场景是什么文章都会有所收获,下面我们一起来看看吧。当...
    99+
    2023-07-05
  • Hadoop中HDFS适用于什么场景
    这篇文章给大家分享的是有关Hadoop中HDFS适用于什么场景的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Hadoop生态系统一直是大数据领域的热点,其中包括今天要聊的HDFS,和计划以后想聊的yarn, ma...
    99+
    2023-06-03
  • Redis的应用场景是什么
    小编给大家分享一下Redis的应用场景是什么,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!一丶Redis介绍Redis是一个开源...
    99+
    2024-04-02
  • 基于SpringBoot应用ApplicationEvent案例场景
    目录一、案例场景二、使用类三、代码1.事件对象1.1 ExampleApplicationEvent1.2 ExampleLocalApplicationEvent1.3 Event...
    99+
    2023-03-09
    Spring Boot应用ApplicationEvent Spring Boot ApplicationEvent
  • SSL/TLS常用于哪些应用场景
    SSL/TLS常用于以下应用场景: 网站加密传输:保护网站上的用户数据(如用户名、密码、信用卡信息)在传输过程中不被窃取或篡改。 ...
    99+
    2024-04-17
    SSL证书
  • Discuz的功能及应用场景
    标题:Discuz的功能及应用场景 Discuz是一款广泛应用于社区论坛建设的开源平台,具有丰富的功能和灵活的应用场景。本文将介绍Discuz的主要功能以及在实际应用中的具体场景,并提...
    99+
    2024-03-02
    - 插件 - 论坛 - 社交 用户注册
  • Discuz究竟是什么?功能及应用场景解析
    Discuz究竟是什么?功能及应用场景解析 随着互联网的发展,人们对于在线交流和社交的需求日益增加,各种论坛、社交平台应运而生。其中,Discuz(翻译为“底部”)是一款知名的开源论坛...
    99+
    2024-03-02
    功能 应用 discuz
  • ssl原理及应用场景是什么
    SSL(Secure Sockets Layer)是一种加密协议,用于保护在互联网上传输的数据安全。它使用公钥加密来保护数据的机密性...
    99+
    2023-06-12
    ssl原理 ssl
  • mysql分区的应用场景是什么
    本篇内容介绍了“mysql分区的应用场景是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!说明最佳场景数据的时间序列性较强,则可按时间进行...
    99+
    2023-06-20
  • java多线程应用场景是什么
    本篇内容主要讲解“java多线程应用场景是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“java多线程应用场景是什么”吧!本教程操作环境:windows7系统、java10版,DELL G3...
    99+
    2023-06-30
  • ArrayBlockQueue函数及应用场景是什么
    今天小编给大家分享一下ArrayBlockQueue函数及应用场景是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。队列在...
    99+
    2023-07-05
  • 云主机可以用于哪些应用场景
    云主机可以用于哪些应用场景?随着科技的不断进步,云计算技术逐渐成为企业和个人的优选。作为云计算的重要组成部分,云主机扮演着关键的角色,为用户提供安全可靠、弹性扩展的计算资源。那么,云主机又可以应用于哪些场景呢?本文将介绍云主机在多个应用场...
    99+
    2024-01-24
    云主机可以用于哪些应用场景 云主机应用场景 云服务器知识
  • GoFrame基于性能怎么测试grpool使用场景
    今天小编给大家分享一下GoFrame基于性能怎么测试grpool使用场景的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。先说结...
    99+
    2023-07-02
  • java消息队列应用场景是什么
    这篇文章主要讲解了“java消息队列应用场景是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“java消息队列应用场景是什么”吧!一、什么是队列队列(Queue)是一种常见的数据结构,其最...
    99+
    2023-06-29
  • Python装饰器的应用场景是什么
    今天小编给大家分享一下Python装饰器的应用场景是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。说明装饰本质上是一个P...
    99+
    2023-06-30
  • MySQL锁机制及应用场景是什么
    本文小编为大家详细介绍“MySQL锁机制及应用场景是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“MySQL锁机制及应用场景是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。锁的概述MySQL锁是操作My...
    99+
    2023-07-05
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作