摘要:问题排查方法方法一通过命令查看当前及内存情况获得通过查看有问题的线程说明指显示线程,是指定进程可以看到两个或内存占用较高的线程,记下此处的即为线程标识,将其从十进制转成十六进制表示,如通过命令获取当前线程栈,可暂时保存到一个文件中,
问题排查方法 方法一
通过top命令查看当前CPU及内存情况
top 86786 java 98.4 13:22.7
获得pid,通过top -H -p86786查看有问题的线程
说明: -H 指显示线程,-p 是指定进程
可以看到两个CPU或内存占用较高的线程,记下PID( 此处的PID即为线程ID标识) ,将其从十进制转成十六进制表示,如0x7f1
printf "%x " tid 0x7f1
通过jstack命令获取当前线程栈,可暂时保存到一个文件tempfile.txt中,在tempfile.txt中查找nid=0x7f1的线程
jstack pid | grep "0x7f1"方法二
查进程ID ps -ef|grep java 或 ps -ef|grep java
ps -mp 8514 -o THREAD,tid,time,pmem 查出进程下线程信息,可以查出%CPU高,TIME长的线程ID(tid)
printf "%x " 8593 tid(8593)转化为十六进制2191
jstack 8514|grep 2191 打印出堆栈信息
常用命令查看指定进程下线程的ID,时间,cpu,内存情况并根据消耗时间排序
ps -mp 9793 -o user,pid,ppid,tid,time,%cpu,%mem,cmd | sort -rk5
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/68760.html
工作中,如果机器cpu idle过低,会收到告警 P2主机名: set-xr-xxxx监控项: all(#5) cpu.idle < 30 当前值: 0 排查的步骤如下, 使用top + 大写P,查看cpu占用过高的进程 这里往往就是后台java服务,然后要通过进程来排查具体的线程,这时有两种方法方法一: top -H -p [pid] , 这时可以看到该进程下的所有线程,同样与大写P结合可以...
摘要:快照,带线程命令,是显示全部进程,是显示线程,全格式输出显示进程树,不加显示所有实时快照推荐程度按数字从小到大。 有时候好好的程序放到生产服务器上一段时间后,就会发现服务器响应缓慢,进而进一步发现是cpu过高,于是就慌了,造成cpu过高的原因很多,不过大多是由于资源吃紧造成,例如:sql执行过慢,程序里存在死循环,数据库连接未释放,网络阻塞导致的第三方框架代码出现死循环,大量的操作导致...
摘要:几个死锁场景两个线程相互调用导致互相等待同步结束。线程为了检测死锁,它需要递进地检测所有被请求的锁。思考题线程有哪些状态这些线程大多处于什么样的状态分布我们可以称系统运行是健康的。 前言 在上一期Tomcat优化中,针对JVM相关主要参数做过一定说明,这一期主要介绍进行一些概念及经验。后面分章节去讲述相关工具的基本使用。 优化优先级 整体来讲,系统优化应先优化架构及代码,来解决具体功能...
DataX的限速与调优 img{ display:block; margin:0 auto !important; width:100%; } body{ width:75%; margin:...
摘要:今天百晓生就阿里云服务器无法远程连接的问题,分享一波运维必备的问题排查方法,说明以下操作在位操作系统中进行过测试。确认公网带宽是否不足无法远程连接可能是公网带宽不足导致的,具体排查方法如下登录管理控制台。在运维工程师的日常工作中,经常需要登录到服务器上对应用部署和维护,配置修改是很常规操作。但是在日常运维工作中,经常也会遭遇滑铁卢,当出现无法远程连接服务器的时候,我们需要沉着冷静,耐心分析报...
阅读 2885·2021-10-19 10:09
阅读 3094·2021-10-09 09:41
阅读 3341·2021-09-26 09:47
阅读 2601·2019-08-30 15:56
阅读 569·2019-08-29 17:04
阅读 954·2019-08-26 11:58
阅读 2485·2019-08-26 11:51
阅读 3300·2019-08-26 11:29