位置: 编程技术 - 正文

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

  • 实收款比应收账款少3万怎么处理
  • 代垫水电费增值税
  • 小微自开专票申报时怎么填写
  • 个体户4年不注销的后果消
  • 高新技术企业认证都有哪些条件
  • 销售自产设备税率
  • 单位买另一单位银行承兑汇怎样入账?
  • 企业年金的税收政策
  • 发票开具税收分类是什么意思?
  • 印花税减半优惠政策2019
  • 对方公司破产债务怎么办
  • 财产租赁所得的税率是多少
  • 库存月底怎么一次性结转成本?
  • 公司购买进口产成品关税会计分录怎么做?
  • 插上U盘电脑无法启动怎么回事
  • 预提税和企业所得税
  • 无形资产资本化和费用化的区别
  • win7显示更新失败怎么办啊
  • 电脑装系统分区出现错误
  • php实现微信发红包的方法
  • window10安装教程u盘
  • 关闭win10系统更新有什么后果
  • postgres.exe是什么进程 postgres进程查询
  • 回迁安置房开发商可以出售吗
  • 存货周转材料报废处理会计分录
  • 包工包料工程要交哪些税
  • 预算周转金会计怎么做账
  • 什么叫非同一控制下
  • php代码加密工具 xend
  • 出售长期股权投资的交易费用
  • 销售商品的收入属于收入吗
  • 装修店面装修费的会计分录
  • 买轿车产生的服务费计入什么科目
  • 物流货物丢失赔偿按照运费10倍
  • 银行承兑汇票回头背书
  • 生产企业出口退税全部流程
  • 修改mysql配置
  • 管理费用的纳税调整
  • 哪些进项税额不得抵扣?
  • 货款减免协议
  • 汇算清缴退税分录怎么做
  • 查定征收和查验征收怎么区分
  • 钱汇错了报警有用吗
  • 开票加的税点走什么费用
  • 资产类科目一般是什么
  • 票据包括哪些
  • 结转已售材料成本6000元
  • 公司固定资产如何核算
  • 如何建立一个新的群
  • sql server Bulk Insert命令详细
  • wind怎么申请
  • 电脑开机怎么设置默认系统
  • 必应big
  • windows xp windows
  • centos安装完成后重启进不去
  • 重装win7旗舰版系统教程
  • ubuntu20.04升级20.10
  • win7系统运行慢,如何提速
  • exe文件xp3
  • win1020h2正式版
  • win10快速隐藏窗口
  • win7 64位系统使用360安全浏览器在网页中播放视频出现花屏的解决方法
  • grep的结果 再次查找
  • linux设置服务器ip地址
  • win7系统里面怎么找到微信程序
  • nodejs获取客户端ip地址
  • cocos2dx 3.0 quick lua schedler
  • Unity3D中Javascript的基本使用与介绍详解
  • 浏览器复制插件在哪
  • unity3d spine
  • jquery点击方法
  • python5.7汉诺塔
  • 收集和整理的区别
  • 开个人发票有什么好处?
  • 什么叫银税互动
  • 常州税务局举报网站
  • 江苏退休核定表最低缴费系数是什么意思
  • 个人税务登记证怎么注销
  • 税收助力双创
  • 许昌祥和小区二手房出售
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设