电信的大卡可以剪成现在剪力墙最小配筋率的卡嘛 如果去补卡的话宽带的后付费就必须变先付费 不想改啊求助 j

通过top和jstack确定哪些线程耗尽了CPU?这些线程在做什么? - Java - ITeye论坛
通过top和jstack确定哪些线程耗尽了CPU?这些线程在做什么?
锁定老帖子
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
明天属于我
等级: 初级会员
来自: 杭州
发表时间:&&
相关知识库:
有时,线上集群load会突然飙升,无法响应正常请求。
那么引起load飙升的线程究竟在做什么?哪些线程霸占了CPU?可以通过top和jstack命令进行定位。
2. 定位步骤
1. 使用终端1进入目标机器,执行top命令,默认是进程视图,其中PID是进程号,截图如下:
在这里,我们只能看到java进程占用CPU达到115%,那么究竟是那些线程非常耗CPU呢?
2. 由于我们要看到线程,在终端1,按下“H”键或者“shift+h”,top视图会切换到线程视图,其中PID是线程号,截图如下:
可以发现红框内的线程的CPU使用率非常高,占用CPU时间达到1秒左右,显然不正常,但是这些线程在做什么?
打开终端2,使用jstack命令输出这一时刻的线程栈,保存到文件,命名为jstack.log。注意:输出线程栈和保存top命令快照尽量同时进行。
4. 由于jstack.log文件记录的线程ID是16进制,需要将top命令展示的线程号转换为16进制,以15100为例,在linux下输入命令:printf 0x%x 15100,得到15100的十六进制为0x3afc
5. 在jstack.log中搜索0x3afc关键字,可以清晰看到该线程在做刷新地址列表,如下图:
以前碰到集群load飙升时,有时会束手无策,不知从何查起。以后再发生类似问题时,可以使用这个方法,看下究竟是那些线程在长时间占用CPU,尽快定位问题和解决问题。
江城明月再战江湖
等级: 初级会员
来自: 上海
发表时间:&&
同学,把公司的东西拿出来分享可是很危险的哦~
请登录后投票
明天属于我
等级: 初级会员
来自: 杭州
发表时间:&&
江城明月再战江湖 写道同学,把公司的东西拿出来分享可是很危险的哦~
谢谢提醒,稍等我把一些关键信息隐掉
请登录后投票
kuchaguangjie
等级: 初级会员
来自: 深圳
发表时间:&&
请登录后投票
等级: 初级会员
来自: 长沙
发表时间:&&
请登录后投票
跳转论坛:移动开发技术
Web前端技术
Java企业应用
编程语言技术

我要回帖

更多关于 最小剪重比 的文章

 

随机推荐