系统有四大资源:CPU、内存、磁盘、网络

CPU密集型:

介绍:说明系统的瓶颈在CPU上面(比如做大量的运算、矩阵运算、计算圆周率、渲染等),此时性能瓶颈就在CPU上面,无论你磁盘读写多块,性能也上不去

解决:这种情况下,如果要提升系统性能,就要补短板,

1:换电脑芯片(比如9代i5换成11代i7,此时CPU就上去了)

2:减少相应的CPU计算,修改业务逻辑(业务逻辑修改了,CPU处理时间减少,排队、竞争开销减少)

配置:对于CPU密集型来说,我们配置的线程数 = CPU核数就可以了,因为核数就那么多,再多的任务过来也无法并行处理,只能并发处理,那么我们开那么多线程也是并发处理,没啥软用

IO密集型:

介绍:说明系统的瓶颈在IO上面(比如我们经常打开QQ、微信等,这些软件都是IO密集型),因为性能瓶颈就在IO读写(网络IO、磁盘IO)上面,无论你CPU多快,读写IO一直阻塞着,你CPU也啥活都干不了

解决:这种情况下,如果要提升系统性能,就要补短板

1:开多核,并行进行IO操作

2:换磁盘,提升磁盘读写IO(如果是磁盘IO,将机械换成固态,如果是云服务器,那么升级云服务器的配置也可以)

配置:对于IO密集型,我们配置的线程数 = CPU核数  /  (1 – 阻塞系数)

IO密集型和CPU密集型相关推荐

  1. IO密集型和CPU密集型程序-概念与实现

    欢迎关注笔者的微信公众号 概念 在计算机科学中,有两种不同类型的程序:IO 密集型和 CPU 密集型.这两种程序的主要差别在于它们在执行任务时瓶颈所在的地方. IO 密集型:这类程序主要通过读写磁盘文 ...

  2. io密集型和cpu密集型_一次说明白Python爬虫中多线程,多进程,异步IO编程

    图/文:迷神 我们在Python爬虫中,重要的是讲究速度,如果有10万或者100万Url地址,写过爬虫的都会知道,那估计是非常慢的.我们的Python爬虫一般IO密集型业务,Python爬虫程序需要发 ...

  3. io密集型和cpu密集型java,如何设计CPU密集型与I/O密集型程序

    CPU密集型(CPU-Bound)是指系统指花费相对大部分时间在做CPU运算.逻辑判断等,CPU使用率很高,典型的如加密运算:I/O密集型(I/O-Bound)是指系统花费大部分时间在等待相对较慢的I ...

  4. io密集型和cpu密集型_和小胖一起理解CPU负载和利用率

    作者:小胖前言 凌晨一点,正整着炸鸡的小胖,微信一呼"你的服务器CPU持续超载 - " 麻溜的连上服务器,先把CPU负载摁下来.仔细一想,最近1分钟平均负载很大,但CPU利用率却≤ ...

  5. io密集服务器cpu性能,IO密集型和CPU密集型 线程数的计算

    CPU密集型 每一个CPU核心都参与计算,将CPU的性能充分利用起来,这样才算是没有浪费服务器配置,如果在非常好的服务器配置上还运行着单线程程序那将是多么重大的浪费.对于计算密集型的应用,完全是靠CP ...

  6. Java工程进行性能测试时通常要考虑哪些要素,如何使接口响应时间在毫秒级范围,Java项目如何进行性能测试?0.2s的反应时间内返回响应,用户感知情况较好。附IO密集型和计算密集型性能测试摸底代码

    研究表明,人的反应时间通常在0.2s左右,运动员0.14s已经是顶级反应了,所以响应时间在0.2秒以内通常是无感的.那么在性能测试时,需要关注哪些指标呢? CPU:有的应用需要大量计算,他们会长时间. ...

  7. io密集服务器cpu性能,线程池中CPU密集型和IO密集型选择

    cpu密集型:cpu使用率较高(也就是一些复杂运算,逻辑处理),所以线程数一般只需要cpu核数的线程就可以了.这一类型的在开发中多出现的一些业务复杂计算和逻辑处理过程中. IO密集型:cpu使用率较低 ...

  8. 谈计算(cpu)密集型和io密集型与php性能优化

    这篇文章计划很久了一直感觉无从下手, 一直想全面.深入的写一篇关于php优化,但思绪很乱,经过很多天的构思和整理,终于有点头绪了. 几十年来,php以超高的开发效率.低成本的投入.内置丰富的函数库.灵 ...

  9. 如何区分IO密集型、CPU密集型任务?

    前言 日常开发中,我们时常会听到什么IO密集型.CPU密集型任务... 那么这里提一个问题:大家知道什么样的任务或者代码会被认定为IO/CPU密集?又是用什么样的标准来认定IO/CPU密集? 如果你没 ...

最新文章

  1. APP安全谁之过?爱加密为APP开发者分忧
  2. 16.1 Tomcat介绍16.2 安装jdk16.3 安装Tomcat
  3. JZOJ 5625. 【NOI2018模拟4.3】Max
  4. 【BZOJ4417】: [Shoi2013]超级跳马
  5. 基于ARM 构架(带MMU)的copy_from_user与copy_to_user详细分析
  6. 人体反应测试仪 c语言,人体反应速度测试仪毕业设计说明
  7. ajax荷马史诗,荷马史诗(8)
  8. 用Canvas为网页加入动态背景
  9. Qt Installer Framework翻译(7-4)
  10. linux下mysql解压包安装
  11. ASP.NET DAY1
  12. 使用 jQuery Mobile 和 CSS3 实现响应式设计
  13. 转: 技巧/诀窍:在ASP.NET中重写URL
  14. html风格的滚动条
  15. jQuery 使用收集
  16. 成功 Root ------ 红米note3
  17. mysql修改字段默认值_Mysql 修改字段默认值
  18. 帝国cms内容页模版
  19. 关于java中xml文档解析
  20. 单层石墨烯工业化量产科研成果及工业化量产基地落地

热门文章

  1. loopback端口作用
  2. varbinary 与 text 不兼容如何解决
  3. 校园访客登记管理系统设计与实现 java
  4. 在“提示”框中:轻松进行Android转换,自定义YouTube和跟踪电池使用情况
  5. 前端瓦片地图加载之塞尔达传说旷野之息
  6. iOS app - 跳转到应用程序下载页面
  7. AI 《A PROPOSAL FOR THE DARTMOUTH SUMMER RESEARCH PROJECT ON ARTIFICIAL INTELLIGENCE》读后总结
  8. Thymeleaf全解
  9. Windows更新导致AMD Radeon Software等软件无法正常启动
  10. 以太坊-Ethereum Studio工具入门-快速开始