首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
AI面试、笔试、校招、雇品
HR免费试用AI面试
最新面试提效必备
登录
/
注册
芋圆也有烦恼
北京航空航天大学 Java
发布于北京
关注
已关注
取消关注
.
@搬山道猿:
面试官:应用上线后Cpu使用率飙升如何排查?
上次面试官问了个问题:应用上线后Cpu使用率飙升如何排查?其实这是个很常见的问题,也非常简单,那既然如此我为什么还要写呢?因为上次回答的时候我忘记将线程PID转换成16进制的命令了。所以我决定再重温一遍这个问题,当然贴心的我还给大家准备好了测试代码,大家可以实际操作一下,这样下次就不会忘记了。模拟一个高CPU场景public class HighCpuTest { public static void main(String[] args) { List<HignCpu> cpus = new ArrayList<>(); Thread highCpuThread = new Thread(()->{ int i = 0; while (true){ HignCpu cpu = new HignCpu("Java日知录",i); cpus.add(cpu); System.out.println("high cpu size:" + cpus.size()); i ++; } }); highCpuThread.setName("HignCpu"); highCpuThread.start(); }}复制代码在main方法中开启了一个线程,无限构建HighCpu对象。@Data@AllArgsConstructorpublic class HignCpu { private String name; private int age;}复制代码准备好上面的代码,运行HighCpuTest,然后就可以开始一些列的操作来发现问题原因了。排查步骤第一步,使用 top 找到占用 CPU 最高的 Java 进程1. 监控cpu运行状,显示进程运行信息列表top -c2. 按CPU使用率排序,键入大写的PP复制代码第二步,用 top -Hp 命令查看占用 CPU 最高的线程上一步用 top命令找到了那个 Java 进程。那一个进程中有那么多线程,不可能所有线程都一直占着 CPU 不放,这一步要做的就是揪出这个罪魁祸首,当然有可能不止一个。执行top -Hp pid命令,pid 就是前面的 Java 进程,我这个例子中就是 16738 ,完整命令为:top -Hp 16738,然后键入P (大写p),线程按照CPU使用率排序执行之后的效果如下查到占用CPU最高的那个线程 PID 为 16756第三步,查看堆栈信息,定位对应代码通过printf命令将其转化成16进制,之所以需要转化为16进制,是因为堆栈里,线程id是用16进制表示的。(我当时就是忘记这个命令了~)[root@review-dev ~]# printf "%x\n" 167564174复制代码得到16进制的线程ID为4174。通过jstack命令查看堆栈信息jstack 16738 | grep '0x4174' -C10 --color复制代码如上图,找到了耗CPU高的线程对应的线程名称“HighCpu”,以及看到了该线程正在执行代码的堆栈。最后,根据堆栈里的信息,定位到对应死循环代码,搞定。小结cpu使用率飙升后如何排查这个问题不仅面试中经常会问,而且在实际工作中也非常有用,大家最好根据上述步骤实际操作一下,这样才能记得住记得牢。
点赞 93
评论 8
全部评论
推荐
最新
楼层
暂无评论,快来抢首评~
相关推荐
03-15 14:43
字节跳动_TT图文_研发(实习员工)
现阶段Offer总结和TimeLine(3.12)
1. 虾皮广告搜索 Base 北京Time Line:2.23 投递2.24 一面,一面完之后几小时约二面3.2 二面,二面完之后2小时约HR面3.9 HR面3.11 OC2. 懂车帝Agent架构 Base 杭州Time Line:2.16 投递,投递之后很快约一面2.25 一面,一面完之后第二天约二面3.5 二面,二面完之后很快约HR面3.11 HR面3.12 OC3. SenseTime(商汤)AI Infra Base 北京Time Line:2.23 投递,简历评估走了很久2.28 一面,面完之后过了几天约二面3.10 二面+三面3.10 OC
我的OC时间线
点赞
评论
收藏
分享
03-17 23:39
已编辑
香港大学 golang
腾讯后端暑期实习面试记录
Timeline2.26 投递3.3 一面3.5 二面3.12 hr面3.17 oc一面 1h15min一面两个面试官,第一次见。。。面试官介绍业务。问了很多agent相关问题。最近有关注业内agent相关的知识或者新闻吗,挑一个说说。(回答了claude code的设计和anthropic的agent相关工程实践,又聊了一下skills)看你之前实习做过MCP相关工作,讲讲为什么当时要用mcp,mcp有哪些好处?你当时接触的这个agent,它是怎么知道某轮tool call之后该不该结束的?如果让你设计一个agent,如果一轮tool call的返回结果非常非常多,你会怎么设计。你说到了让a...
后端毁我一生:
佬26届?暑期实习?
点赞
评论
收藏
分享
03-16 20:31
字节跳动_飞书安全_前端开发(实习员工)
还是实习生好舔
离职前舔了10个hr,正式工8个拒绝我简历😢,1个说活水无暑期岗位🥺,逮着一个实习生hr狂舔,舔来一次面试机会😅。果然,实习生是最有怜悯心的。
halux:
神了
点赞
评论
收藏
分享
03-04 07:14
门头沟学院 C++
实习无薪资
这种要去吗?
后测速成辅导一两个月...:
老板:都给工作机会了还想要工资,哪来这么多好事
点赞
评论
收藏
分享
03-14 21:00
蚌埠坦克学院 嵌入式软件开发
今年的金三银四怎么有点淡
今年的金三银四感觉有点淡,岗位数量没有想象中那么多,很多公司也变得更谨慎了。投出去的简历不少,但面试机会并不算多。就业环境确实比以前紧张一些,不过也不用太焦虑,慢慢准备、持续投递,总会遇到合适的机会。
你感受到金三银四了嘛?
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
1
收藏
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
我们为什么要做网申助手这个插件
1.2W
2
...
28届实习拷打,一场面试,23个Agent问题
1.1W
3
...
速收藏!各公司最新招聘进展!
8989
4
...
找实习两个月,工具用了一堆,最后只留下这些
6674
5
...
携程3.18Java开发一面面经
6011
6
...
字节ByteIntern剪映后端三面面经
4760
7
...
面试官视角聊聊:如何通过AI coding面试?附焚决
4361
8
...
小红书前端日常实习二面凉经
4030
9
...
命运换了个赛道给我发牌
3511
10
...
字节暑期实习OC
3443
创作者周榜
更多
正在热议
更多
#
跟HR说什么能被秒回?
#
11076次浏览
191人参与
#
小米笔试
#
141189次浏览
1001人参与
#
巨人网络春招
#
10432次浏览
164人参与
#
春招/暑实第一面是哪家?
#
22711次浏览
245人参与
#
视觉/交互/设计百问百答
#
76487次浏览
460人参与
#
你收到了哪些公司的笔试?
#
21321次浏览
119人参与
#
MiniMax求职进展汇总
#
17036次浏览
249人参与
#
如何一边实习一边找下家?
#
34965次浏览
253人参与
#
校招笔试
#
450222次浏览
2843人参与
#
把自己当AI,现在最消耗你token的问题是什么?
#
3761次浏览
103人参与
#
面试官最爱问的 AI 问题是......
#
18928次浏览
631人参与
#
职能管理面试记录
#
9498次浏览
47人参与
#
现在入门AI应该走哪些方向?
#
5364次浏览
109人参与
#
你的嫡系AI是哪个?
#
5153次浏览
122人参与
#
总结:哪家公司面试体验感最差
#
105151次浏览
466人参与
#
正在春招的你,也参与了去年秋招吗?
#
359874次浏览
2615人参与
#
京东美团大战,你怎么看?
#
174603次浏览
883人参与
#
第一次面试
#
1098448次浏览
13828人参与
#
字节开奖
#
135570次浏览
617人参与
#
电信求职进展汇总
#
45584次浏览
210人参与
#
京东开奖
#
674040次浏览
3238人参与
#
面试吐槽bot
#
178648次浏览
832人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务