十个最好的Java性能故障排除工具】的更多相关文章

1.jconsole  是随着JDK 1.5而推出的.这是一个Java监测和管理控制台-JMX兼容的图形工具来监测Java虚拟机.它能够同时监测本地和远程的JVMs.详情可查看:jconsole工具介绍 2.VisualVM  集成了几个现有的JDK软件工具,轻量级内存和CPU信息概要能力.这个工具被设计为同时在生产和开发时使用,进一步提高监视的能力和Java SE平台的性能分析能力. 3.HeapAnalyzer  能够通过它采用启发式搜索引擎和分析Java堆栈存储信息发现可能的Java堆栈泄…
Java性能调优工具 Windows工具 JDK命令行工具 JConsole工具 Visual VM多合一工具 Visual VM对QQL的支持 MAT内存分析工具 MAT对QQL的支持 JProfile简介…
为了能准确获得程序的性能信息,需要使用各种辅助工具.以下主要介绍了Linux上关于Java的系统性能分析工具,掌握这些工具,对于性能瓶颈定位.系统故障排查都有帮助. 1.top命令 [root@localhost ~]# top top - 10:00:05 up 4 days, 22:16, 1 user, load average: 0.00, 0.01, 0.05 Tasks: 211 total, 1 running, 210 sleeping, 0 stopped, 0 zombie…
jmap:java内存映像工具 jmap用于生成堆转储快照,比较常用的option包括-heap,-histo,-dump [root@localhost script]# jmap -h Usage: jmap [option] <pid> (to connect to running process) jmap [option] <executable <core> (to connect to a core file) jmap [option] [server_id@…
CPU使用率工具: vmstat 检查应用性能时,应该首先审查CPU时间.代码优化的目的是提升而不是降低(更短时间段内的)CPU的使用率.在试图深入优化应用前,应该先弄清楚为何CPU使用率低.磁盘使用率工具: iostat 对于所有应用来说,监控磁盘使用率非常重要.即便不直接写磁盘的应用,系统交换仍会影响它们的性能.写入磁盘的应用遇到瓶颈,是因为写入数据的效率不高(吞吐率太低),或者是因为写入太多数据(吞吐率太高).网络使用率工具: netstat nicstat 对于基于网络的应用来说,务必要…
OS 1.CPU 用户态时间(us):cpu执行应用代码所占时间的百分比. 内核态时间(sy):cpu执行内核代码所占时间的百分比,系统态时间与应用相关. 空闲时间(id):cpu空闲时间百分比.空闲可能的原因: 1.应用被同步原语阻塞.等待锁释放 2.应用等待某些东西,例如:查询数据库并等待返回结果 3.应用的确无所事事 运行队列(r):所有正在运行和就绪状态(一旦有可用cpu就可以运行)的线程数.该数据最好小于或等于CPU个数,否则性能就可能会下降.如果长时间运队列过长,则可能是系统过载.…
windows调优工具: 任务管理器(ctrl+alt+delete或).资源管理器(任务管理器->性能进入或运行resmon.exe):JVM分析工具Jconsole,jProfile,VisualVM等集成工具,还有jps.jstack.jmap.jhat.jstat等小巧的工具. Linux工具:top(多核注意CPU和负载不同).pidstat.iostat. 常见问题: 一.CPU过高 1.  us过高 使用监控工具快读定位哪里有死循环,大计算,对于死循环通过阻塞式队列解决,对于大计算…
jps:虚拟机进程状况工具 jps可以用来查看虚拟机进程,基本等同于ps -ef|grep java #查看jps的使用文档 [root@localhost script]# jps -help usage: jps [-help] jps [-q] [-mlvV] [<hostid>] Definitions: <hostid>: <hostname>[:<port>] #查看虚拟机的进程号 [root@localhost script]# jps 417…
如何利用 JConsole观察分析Java程序的运行,进行排错调优 http://jiajun.iteye.com/blog/810150 如何使用JVisualVM进行性能分析 http://jiajun.iteye.com/blog/1180230 全功能的Java剖析工具(profiler) http://www.blogjava.net/mrzhangshunli/archive/2007/08/27/140088.html http://www.cnblogs.com/jayzee/p…
概述 性能优化一向是后端服务优化的重点,但是线上性能故障问题不是经常出现,或者受限于业务产品,根本就没办法出现性能问题,包括笔者自己遇到的性能问题也不多,所以为了提前储备知识,当出现问题的时候不会手忙脚乱,我们本篇文章来模拟下常见的几个Java性能故障,来学习怎么去分析和定位. 预备知识 既然是定位问题,肯定是需要借助工具,我们先了解下需要哪些工具可以帮忙定位问题. top命令 top命令使我们最常用的Linux命令之一,它可以实时的显示当前正在执行的进程的CPU使用率,内存使用率等系统信息.t…