Linux下JAVA线程占用CPU高一点分享
来源:互联网 发布:客厅沙发颜色搭配 知乎 编辑:程序博客网 时间:2024/06/05 14:51
【本文转自Linux下JAVA线程占用CPU高一点分享】
上次分析系统中占用CPU高的问题,得到一些使用Java自身调试工具的经验,与大家分享。
(1)使用top命令找出占用cpu最高的JAVA进程PID:28174
(2)如下命令找出占用cpu最高的线程
- top -Hp 28174 -d 1 -n 1
- PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
- 32694 root 20 0 3249m 2.0g 11m S 2 6.4 3:31.12 java
- 28175 root 20 0 3249m 2.0g 11m S 0 6.4 0:00.06 java
- 28176 root 20 0 3249m 2.0g 11m S 0 6.4 1:40.79 java
- 28177 root 20 0 3249m 2.0g 11m S 0 6.4 1:41.12 java
- 28178 root 20 0 3249m 2.0g 11m S 0 6.4 1:41.11 java
- 28179 root 20 0 3249m 2.0g 11m S 0 6.4 1:41.33 java
- 28180 root 20 0 3249m 2.0g 11m S 0 6.4 1:41.58 java
- 28181 root 20 0 3249m 2.0g 11m S 0 6.4 1:40.36 java
- 28182 root 20 0 3249m 2.0g 11m S 0 6.4 1:41.02 java
- 28183 root 20 0 3249m 2.0g 11m S 0 6.4 1:40.96 java
- 28184 root 20 0 3249m 2.0g 11m S 0 6.4 4:38.30 java
- 28185 root 20 0 3249m 2.0g 11m S 0 6.4 0:00.46 java
- 28186 root 20 0 3249m 2.0g 11m S 0 6.4 0:01.83 java
- 28187 root 20 0 3249m 2.0g 11m S 0 6.4 0:00.00 java
- 28189 root 20 0 3249m 2.0g 11m S 0 6.4 0:00.01 java
- 28190 root 20 0 3249m 2.0g 11m S 0 6.4 0:49.01 java
(3)打印占CPU最高JAVA进程28174的堆栈信息
- /usr/java/jdk1.6.0_21/bin/jstack 28174 > /root/mss/41-100javathreaddump.txt
(4)占CPU最高线程32694换算成16进制到文档中寻找对应线程7fb6
- "MSXMLProcessorThread" prio=10 tid=0x00002b469923a800 [color=darkred]nid=0x7fb6[/color] sleeping[0x00002b46b0200000]
- java.lang.Thread.State: TIMED_WAITING (sleeping)
- at java.lang.Thread.sleep(Native Method)
- at com.adventnet.management.xml.MSXmlProcessor.listen(MSXmlProcessor.java:279)
- at com.adventnet.management.xml.MSXmlProcessor.run(MSXmlProcessor.java:264)
- at java.lang.Thread.run(Thread.java:619)
以上过程手工进行,虽然不如Jprofiler和java自带的可视化工具那么直观,但是能够解决问题!尤其是在不能使用远程调试工具的时候,能够提供最大的帮助。
0 0
- Linux下JAVA线程占用CPU高一点分享
- Linux下JAVA线程占用CPU高一点分享
- jstack:分析linux下java程序占用CPU高
- linux下查出cpu占用过高线程
- 嵌入式linux下线程CPU占用跟踪
- Java 高CPU占用
- windows下揪出java程序占用cpu很高的线程 并找到问题代码 死循环线程代码
- windows下揪出java程序占用cpu很高的线程 并找到问题代码 死循环线程代码
- windows下揪出java程序占用cpu很高的线程 并找到问题代码 死循环线程代码
- windows下揪出java程序占用cpu很高的线程 并找到问题代码 死循环线程代码
- windows下揪出java程序占用cpu很高的线程 并找到问题代码 死循环线程代码
- windows下揪出java程序占用cpu很高的线程 并找到问题代码 死循环线程代码
- windows下揪出java程序占用cpu很高的线程 并找到问题代码 死循环线程代码
- windows下揪出java程序占用cpu很高的线程 并找到问题代码 死循环线程代码
- linux下采用ps、jstack命令排查命中java应用中占用CPU高的代码
- linux下采用ps、jstack命令排查命中java应用中占用CPU高的代码
- linux 高cpu占用调试
- linux 高cpu占用调试
- iOS前后台切换运行周期
- Vert.x入门:Hello World!
- 算法提高 最长字符序列
- 2507 李白打酒
- 算法/贪心算法/BinPacking一维装箱问题
- Linux下JAVA线程占用CPU高一点分享
- shu数据库操作——商品展示
- 算法提高 不大的数
- 【JS】【跨域】js中几种实用的跨域方法原理详解
- STAF
- 创建对象
- H5新增表单元素
- 浅谈android中的自定义封装易用的Dialog
- 一步一步超级详细的zabbix安装教程