肥宅钓鱼网
当前位置: 首页 钓鱼百科

cpu运行缓慢是怎么回事(系统反应慢怎么排查)

时间:2023-06-29 作者: 小编 阅读量: 1 栏目名: 钓鱼百科

导致CPU飙高的原因有以下两个:1、CPU上下文切换过多。上下文切换需要做两个事情保存运行线程的执行状态让处于等待中的线程执行这两个过程需要CPU执行内核相关指令实现状态保存,如果较多的上下文切换会占据大量CPU资源,从而使得CPU无法去执行用户进程中的指令,导致响应速度下降。CPU利用率过高之后,导致应用中的线程无法获得CPU的调度,从而影响程序的执行效率!

面试过程中,场景类的问题更容易检测出一个开发人员的基本能力。这不,有一位小伙伴去阿里面试,第一面就遇到了关于“CPU 飙高系统反应慢怎么排查”的问题?当时这位小伙伴不知从何下手。

今天,我给大家分享一下我的解决思路。

CPU 是整个电脑的核心计算资源,对于一个应用进程来说,CPU 的最小执行单元是线程。导致 CPU 飙高的原因有以下两个:

1、CPU 上下文切换过多。

对于 CPU 来说,同一时刻下每个 CPU 核心只能运行一个线程,如果有多个线程要执行,CPU 只能通过上下文切换的方式来执行不同的线程。上下文切换需要做两个事情

保存运行线程的执行状态

让处于等待中的线程执行

这两个过程需要 CPU 执行内核相关指令实现状态保存,如果较多的上下文切换会占据大量CPU 资源,从而使得 CPU 无法去执行用户进程中的指令,导致响应速度下降。在 Java 中,文件 IO、网络 IO、锁等待、线程阻塞等操作都会造成线程阻塞从而触发上下文切换。

2、CPU 资源过度消耗。

也就是在程序中创建了大量的线程,或者有线程一直占用CPU 资源无法被释放,比如死循环!CPU 利用率过高之后,导致应用中的线程无法获得 CPU 的调度,从而影响程序的执行效率!既然是这两个问题导致的 CPU 利用率较高,于是我们可以通过 top 命令,找到CPU 利用率较高的进程,在通过 Shift H 找到进程中 CPU 消耗过高的线程,这里有两种情况。

CPU 利用率过高的线程一直是同一个,说明程序中存在线程长期占用 CPU 没有释放的情况,这种情况直接通过 jstack 获得线程的 Dump 日志,定位到线程日志后就可以找到问题的代码。

CPU 利用率过高的线程 ID 不断变化,说明线程创建过多,需要挑选几个线程 ID,通过 jstack 去线程 dump 日志中排查。最后有可能定位的结果是程序正常,只是在 CPU 飙高的那一刻,用户访问量较大,导致系统资源不够。

以上就是我对这个问题的理解!从这个问题来看,面试官主要考察实操能力,以及解决问题的思路。如果你没有实操过,但是你知道导致 CPU 飙高这个现象的原因,并说出你的解决思路,通过面试是没问题的。

我是被编程耽误的文艺Tom,如果我的分享对你有帮助,请动动手指分享给更多的人。关注我,面试不再难!

最后,7/8/9月份资料文档已整理,包含如下↓(还在持续更新中!):

①100道最新大厂经典面试题解析资料文档!

②15万 字Java面试题解析和配套答案!

③从应届生到高级开发都适用的简历模板!

④从入门到精通的架构师学习路线图!

⑤还有各种技术流程图,路径图!

有需要的 Si 我 “666”拿!

    推荐阅读
  • s18赛季什么时候开始(王者荣耀S18开始时间)

    可以看到其中的时间是2019年10月-2020年1月,基本可以确定是在1月会开启新赛季,下面我们就来聊聊关于s18赛季什么时候开始?s18赛季什么时候开始排位赛-比赛信息-赛季时间。s17赛季排位主题改版,将之前的s3~s16赛季整理为荣耀启程,s17赛季变成凤仪之诏,同样在这里面也可以查看到s17赛季时间!由于荣耀战令时间是先于赛季时间结束时间,可以进一步缩小s17赛季结束时间的范围。

  • 隔海峡的海峡是什么意思(浅浅的海峡)

    于右任先生的遗体埋葬在台北最高的大屯山上,先生可以在那里遥望大陆。上世纪80年代中后期,邓丽君、齐豫等歌手的音乐逐渐风靡大陆。小说把日月潭叙述成为台湾人欢度蜜月的首选地,并且较详细地描绘了男女主人公在日月潭各个景点游玩的经历。据导游介绍说,日月潭最美的时刻是在清晨,晨曦初露之时,整个潭面云雾缥缈,朦朦胧胧,宛如一幅画卷徐徐展开。乐野村已有一定的海拔高度,在这里已经可以远眺玉山及彩虹峡谷的壮丽景观。

  • 带日字旁的男孩名字(带日字旁的男孩名字有哪些)

    1、昂海、旬志、晖中、昌濡、晏达、日晖2、暂轩、昶强、晗皓、晏之、晴诚、旨济3、昙伟、旸昌、晋灿、晓平、景莱、旷洋4、晋慨、暧英、易纶、明良、晗智、昔钰5、星翰、晨阳、智禧、旸骏、时升、显震6、暄睿、早曦、昔硕、晖荣、昭和、晨豪7、昕锐、曙杰、昪旻、昆珹、旭信、暖湃

  • 星汉灿烂的星汉是什么意思(星汉灿烂的星汉解释)

    水何澹澹,山岛竦峙。日月之行,若出其中。海水多么宽阔浩荡,山岛高高地挺立在海边。树木和百草丛生,十分繁茂。秋风吹动树木发出悲凉的声音,海中涌着巨大的海浪,太阳和月亮的运行,好像是从这浩瀚的海洋中发出的。银河星光灿烂,好像是从这浩瀚的海洋中产生出来的。

  • 打印页数怎么设置(怎么样设置打印页数)

    以word为例,打印页数设置的方法:1、打开word文档,点击左上角的文件选项。

  • 激活根系的最好方法(过磷酸钙对植物的作用)

    过磷酸钙属于水溶性速效磷肥。使用过磷酸钙时,要注意用法用量,现买现用,且不要将它与碱性肥料混合施用。这样过磷酸钙的肥料效果就比较好,其有效成分的利用率也高。如与有机肥混合作基肥时,过磷酸钙的每亩施用量应在20~25kg左右。

  • 家用面包机哪个牌子好(面包机和厨师机哪个实用)

    目前飞利浦已发展成为一家大型跨国公司,2007年全球员工已达128,100人,在28个国家设有生产基地,在150个国家设有销售机构,拥有8万项专利、实力超群。总的来说伊莱克斯产品质量,以及产品的知名度等等方面,都是十分不错的。

  • 小学音乐试讲注意事项(顺德数学之窗梁钊林纪念小学符耀文卫星运行时间说课分享)

    我说课的内容是《卫星运行时间》,属于课后说课。教材通过创设“卫星运行时间”的情境,引导学生经历估算、笔算、理解算理等活动,学习三位数乘两位数的计算方法。为后续多位数乘法及小数、分数乘法的学习奠定基础。2.探究新知,点拨深化我顺势呈现课本情境,并揭示课题——卫星运行时间。

  • 民办二本和公办二本有什么区别(民办二本和公办二本含金量一样吗)

    民办二本和公办二本有以下三个方面:1、公办二本高校与民办二本高校都是经教育部主管部门批准设立的,两者唯一的区别就是资金来源不同,公办院校办学经费来源于政府部门,而民办院校办学经费完全靠自筹。正规的大单位,尤其是国企,更看重名牌公办大学的学生。

  • 奔驰历史简介(奔驰了解多一点)

    1926年6月,戴姆勒公司与奔驰公司合并成立了戴姆勒-奔驰汽车公司,以梅赛德斯-奔驰命名的汽车,是高质量、高性能的汽车产品最完美的代表。1909年,戈特利布·戴姆勒先生为了纪念他的车大批量生产,将三叉星内的齿轮图案改为月桂枝,以示胜利。1926年,戴姆勒与奔驰合并,星形的标志与奔驰的月桂枝终于合二为一,下有Mercedes-Benz字样。后将月桂枝改成圆环,并去掉了Mercedes-Benz的字样。随着这两家历史悠久地汽车生产商的合并,厂方再次为商标申请专利权。