【日拱一卒进击大厂系列】面试官:服务器CPU使用率达到了90%以上,该怎么排查问题?

简介: 【日拱一卒进击大厂系列】面试官:服务器CPU使用率达到了90%以上,该怎么排查问题?

背景

程序猿小枫最近工作的很不开心,领导不赏识,感觉自己没有出头之日,于是心中萌生了换个工作环境的想法。从此小枫开始了他的漫漫求职之路。小枫的目标是一线互联网大厂,但是由于自己好久没有面试了,所以他准备先找几家公司练练手,找找面试的感觉,等自己完全准备好了再投自己心仪的大厂。这不,某个二线互联网公司的面试官给小枫打来了面试电话,我们来一起看看面试官都问了小枫什么问题?小枫回答出来了吗?

面试官考察目的分析

面试官:有没有过问题排查经历,假如服务器CPU使用率达到了90%以上,该怎么排查问题?

目的分析:面试官问的这个问题主要是项考察下在实际的工作中,候选人有没有一些生产问题排查以及解决的经验,以及遇到问题的时候分析问题的思路是怎样的。只有有经验同时能够按照自己的思路一步一步排查解决问题的人才是面试官感兴趣的候选人。

问题分析

这个问题其实并不难,如果服务器中的服务CPU比较高,那我们就要先确定到底是哪个服务CPU使用率高,然后再看服务内部什么原因导致CPU使用率高,找到了根本原因之后再进行问题修复和处理就可以了,于是小枫在脑海中整理了下思路,开始回答问题。

小枫:如果服务器的CPU使用率比较高可以使用top命令看下到底哪个服务的CPU占用率比较高,找到占用最高的java进程。找到之后,再使用top -Hp pid的命令查看java服务中到底哪个线程占用的CPU最高,使用jstack命令可以将java服务的线程堆栈打印出来,再通过之前获取到的线程id找到到底服务中哪个线程CPU占用的很高。

前段时间就遇到过类似的问题,通过刚才的排查步骤找到了CPU占用比较高的线程。翻看代码后发现,CPU比较高是因为线程中存在一个while循环的代码,不断判断队列中是否有数据。最后通过优化,将while循环空判断的情况进行了改进,当队列有数据的时候才进行后续的业务处理,没有数据的时候就进行等待。优化后CPU使用率下降了53%。

image.png

面试官:面试官听完后,嘴角露出了笑容,心想这个小伙子还不错,既有问题分析思路,也有案例辅助说明,兴趣渐浓。再问问其他问题吧。

总结

程序猿小枫找工作的故事还在继续,他能不能找到自己想要的工作,能不能收获大厂的offer,请大家拭目以待哦。

相关文章
|
1月前
|
Arthas Kubernetes Java
字节面试:CPU被打满了,CPU100%,如何处理?
尼恩,一位拥有20多年经验的老架构师,针对近期读者在一线互联网企业面试中遇到的CPU 100%和红包架构等问题,进行了系统化梳理。文章详细解析了CPU 100%的三大类型问题(业务类、并发类、内存类)及其九种常见场景,提供了使用jstack和arthas两大工具定位问题的具体步骤,并分享了解决死锁问题的实战案例。尼恩还强调了面试时应先考虑回滚版本,再使用工具定位问题的重要性。此外,尼恩提供了丰富的技术资料,如《尼恩Java面试宝典》等,帮助读者提升技术水平,轻松应对面试挑战。
字节面试:CPU被打满了,CPU100%,如何处理?
|
19天前
|
存储 关系型数据库 MySQL
查询服务器CPU、内存、磁盘、网络IO、队列、数据库占用空间等等信息
查询服务器CPU、内存、磁盘、网络IO、队列、数据库占用空间等等信息
192 2
|
1月前
|
Java
Java面试题之cpu占用率100%,进行定位和解决
这篇文章介绍了如何定位和解决Java服务中CPU占用率过高的问题,包括使用top命令找到高CPU占用的进程和线程,以及使用jstack工具获取堆栈信息来确定问题代码位置的步骤。
97 0
Java面试题之cpu占用率100%,进行定位和解决
|
1月前
|
弹性计算 安全 Linux
阿里云国际版使用ping命令测试ECS云服务器不通的排查方法
阿里云国际版使用ping命令测试ECS云服务器不通的排查方法
|
2月前
|
消息中间件 安全 前端开发
面试官:单核服务器可以不加锁吗?
面试官:单核服务器可以不加锁吗?
49 4
面试官:单核服务器可以不加锁吗?
|
1月前
|
缓存 监控 负载均衡
提高服务器CPU使用率
提高服务器CPU使用率
101 7
|
1月前
|
存储 缓存 监控
如何提高服务器CPU性能?
如何提高服务器CPU性能?
143 3
|
2月前
|
存储 关系型数据库 MySQL
查询服务器CPU、内存、磁盘、网络IO、队列、数据库占用空间等等信息
查询服务器CPU、内存、磁盘、网络IO、队列、数据库占用空间等等信息
130 5
|
1月前
|
弹性计算 数据安全/隐私保护 Windows
阿里云国际版无法远程连接Windows服务器的排查方法
阿里云国际版无法远程连接Windows服务器的排查方法
|
1月前
|
域名解析 弹性计算 安全
无法ping通ECS服务器公网IP的排查方法
无法ping通ECS服务器公网IP的排查方法