位置: 编程技术 - 正文

详解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服务端调试配置(地盘正针的详解使用)

  • 内蒙古注册税务师协会
  • 独立法人和法人独资的区别
  • 万元版增值税发票最多可以开多少
  • 应付职工薪酬工资贷方有余额要怎么调整
  • 微商怎么收税
  • 网上代购收取手机费吗
  • 出口货物补税申报表
  • 预算控制方法主要包括
  • 公司没车但是有加油费发票怎么处理?
  • 非独立核算的公司怎么报税
  • 公司未分配利润太大,怎么处理好
  • 增值说税率怎么计算
  • 个体定税标准
  • 财务每月需要报哪些税
  • 增值税发票金额是含税还是不含税价
  • 增值税发票附表
  • 发票和款未付可以抵扣吗
  • 计提缴纳增值税怎么做账
  • 远期结汇账务处理分录
  • 车间工人工资计入
  • 鸿蒙大文件夹怎么设置透明度
  • 开了红字发票销售方应怎么账务处理?
  • 有营业执照是否可以领失业金
  • 期末留抵税额的减值
  • win11如何设置安装位置
  • 计算土地增值税时增值额的扣除项目包括
  • 客户尾款不付会计分录
  • 支付宝小程序跳回app
  • 建筑安装企业核定征收企业所得税
  • 小程序开发定制
  • qss 设置字体
  • gpt3 api
  • JavaScript数组(四):判断数组相等的4种方法
  • 境外公司委托境内公司付款
  • 小规模发票跨月冲红怎么做账
  • 持有待售资产属于
  • 应交税费月末怎么结转分录
  • qt 5.15 编译
  • 电力安装有前途吗
  • 预计净残值影响营业利润吗
  • 企业享受政府补贴的具体方式
  • 利润表中的所得税费用包括哪些
  • sql如何进行事务操作
  • 股东权益包括什么科目
  • 小规模季度超过45万了怎么缴纳
  • 期末账项调整的内容包括
  • 以非现金偿还债务的情形
  • 存货价值的计算公式
  • 通行费电子发票进项税额如何填报
  • 施工单位结算
  • 小规模纳税人购进商品会计分录
  • 如何理解事业单位处罚暂行条例中第十八条的兼职规定
  • 管理不善存货盘亏计入什么科目
  • 制造企业费用会计
  • 多收发票会计分录
  • 水利建设基金的征税对象
  • 房地产开发费用10%
  • 会计怎么做的
  • 如何当好一个农民
  • 企业建账的流程是怎样的
  • mac下安装anaconda
  • 如何删除windows media center
  • mac截图清晰度设置方法
  • windows查找命令
  • ubuntu 15.04系统怎么安装qq?
  • 苹果电脑使用u盾怎么用
  • win8命令提示符管理员怎么打开
  • mac vm安装win10
  • linux系统中安装软件的批处理文件
  • NkbMonitor.exe - NkbMonitor是什么进程文件 有什么作用
  • win7禁用administrator
  • win7开机提示由于启动计算机时出现页面文件
  • linux使用ssh远程连接服务器
  • unity 3d数学
  • javascriptdom编程
  • linux安装node安装包
  • 浅谈编码,解码的意义
  • java stringapi
  • 国家税务总局惠州仲恺高新技术产业开发区税务局
  • 经营租赁属于什么费用
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设