位置: 编程技术 - 正文

详解node单线程实现高并发原理与node异步I/O(node 多线程)

编辑:rootadmin

推荐整理分享详解node单线程实现高并发原理与node异步I/O(node 多线程),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:nodejs单线程处理高并发,node单线程 高并发,node单线程异步,node单线程还是多线程,node单线程异步,node单线程还是多线程,node.js单线程,node单线程异步,内容如对您有帮助,希望把文章链接给更多的朋友!

一、node单线程实现高并发原理

众所周知nodejs是单线程且支持高并发的脚本语言。可为什么单线程的nodejs可以支持高并发呢?很多人都不明白其原理,下面我来谈谈我的理解:

1. node的优点:I/O密集型处理是node的强项,因为node的I/O请求都是异步的(如:sql查询请求、文件流操作操作请求、http请求...)

a. 什么是异步?

异步:发出操作指令,然后就可以去做别的事情了,所有操作完成后再执行回调

异步的实现原理: 

b. 什么是异步I/O?

异步I/O顾名思义就是异步的发出I/O请求

c. 虽然nodejs可以异步的发出I/O请求,但nodejs不支持多线程,为啥就可以支持高并发呢?

详解node单线程实现高并发原理与node异步I/O(node 多线程)

因为nodejs的I/O操作,底层是开启了多线程的

当同时有多个IO请求时,主线程会创建多个eio线程,以提高IO请求的处理速度    

额外知识点:

d. 虽然nodejs的I/O操作开启了多线程,但是所有线程都是基于主线程开启的只能跑在一个进程当中还是不能充分利用cpu资源

pm2进程管理器可以解决这个问题

pm2 是一个带有负载均衡功能的Node应用的进程管理器.

e. cpu核数与线程之间的关系

在过去单CPU时代,单任务在一个时间点只能执行单一程序。之后发展到多任务阶段,计算机能在同一时间点并行执行多任务或多进程。虽然并不是真正意义上的“同一时间点”,而是多个任务或进程共享一个CPU,并交由操作系统来完成多任务间对CPU的运行切换,以使得每个任务都有机会获得一定的时间片运行。而现在多核CPU的情况下,同一时间点可以执行多个任务,具体到这个任务在CPU哪个核上运行,这个就跟操作系统和CPU本身的设计相关了

2. node的缺点:不擅长cpu密集型的操作

a. 什么是cpu密集型操作(复杂的运算、图片的操作)

b. nodejs为什么不擅长cpu密集型操作

因为nodejs是单线程的

标签: node 多线程

本文链接地址:https://www.jiuchutong.com/biancheng/379524.html 转载请保留说明!

上一篇:Node调用Java的示例代码(node.js调用c)

下一篇:详解使用vscode+es6写nodejs服务端调试配置(地盘正针的详解使用)

  • 计提所得税比实际缴纳的少
  • 如何在网上查询个人房产
  • 企业税分几种类型
  • 员工出差有补助吗
  • 存款利息收入增值税是免税还是不征税
  • 卷烟消费税纳税环节有几个
  • 票据贴现业务利润怎么算
  • 订金退回怎么做账
  • 小规模纳税人是简易计税吗
  • 工程发票包括哪些
  • 工业企业小规模纳税人的认定标准
  • 目前建筑里面税金总共包括几部分
  • 股东分红纳入社会保险吗
  • 发票已认证未抵扣怎么办
  • 计提坏账准备和发生坏账准备分录
  • 发票丢失罚款标准要看金额吗
  • 电子发票怎么冲红字
  • 支票存根没有进账怎么办
  • 外地项目的预交税款没交怎么办
  • 没有及时去做财务会计制度备案怎么办?
  • 单位应当为职工创造有益于健康的环境和条件
  • win 10动态锁是什么
  • 实收资本或股本账户属于企业的什么账
  • 租赁合同法律风险
  • 实收资本可以大于注册资本吗
  • win11如何设置安装位置
  • 非货币性资产交换和债务重组的区别
  • 国产操作系统两项全球第一
  • 退货 会计
  • 固定资产改造时的账面价值
  • 用java做项目
  • 债券利息计算表
  • 餐饮企业库存盘点表
  • thinkphp整合layuiadmin
  • 海关进口增值税如何入账
  • 增值税留抵抵欠流程
  • dir命令linux
  • Google C++ Style中允许使用的Boost库(1) 程序即人生 博客频道 CSDN.NET
  • 进口设备增值税计算
  • 认证发票可以分两次进行吗
  • 全套工商登记资料都有什么
  • 研发费用资本化可以加计扣除吗
  • java获取resources下文件路径
  • 实际缴纳的增值税用哪个科目
  • 2020年附加税减免怎么填报表
  • 原始凭证的基本内容有会计分录吗
  • 国债逆回购收益什么时候到账
  • 债务抵销的条件
  • 员工报销医药费怎么做会计分录
  • 银行发放执行款多久到账
  • 材料成本多少合适
  • 计提员工工资是什么意思
  • 什么情况下交劳务税
  • mysql的union和union all
  • xp系统的ie浏览器无法打开该网页怎么办
  • Windows Server 2008下Backup功能全通透
  • centos清理磁盘空间
  • freebsd忘记root密码
  • vmware 10虚拟机
  • 系统之家一键重装系统教程
  • win7禁用administrator登录
  • windows7粘滞键怎么关
  • xp系统怎么和win7系统共享
  • saimon.exe - saimon进程有什么用 有何作用
  • 搜索应用界面
  • win10系统ie浏览器不见了
  • linux必学的60个命令及使用
  • linux防火墙的主要内容
  • linux 如何
  • shell发送邮件
  • jquery操作html代码
  • 深入理解中国式现代化
  • python console不能用
  • ecmascript新特性
  • 公司开票明细如何查询
  • 税务安装步骤
  • 江苏国税网上勾选平台
  • 地方税务局受谁领导
  • 企业间借款合同印花税怎么交
  • 绵阳税务局咨询电话
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设