JDK自带内存及线程分析工具
转载:http://blog.csdn.net/kimylrong/article/details/50970493
查询、监控、分析Java应用程序的时候,我们关注的点主要集中在资源利用,比如CPU,内存,IO,线程等。其中内存以及线程的分析尤为常见。内存,是否有内存泄漏,各个区块内存分配是否大小合适。线程,数目是否合理,有没有死锁,运行状态如何。
jps -vl
jps是JDK提供的一个小工具,上面的命令会把操作系统里面的java应用都展示出来,显示PID,启动类或者JAR,VM参数。可以通过jps -help进一步了解详细信息。当然也可以用操作系统的netsat查询PID。下文提到的PID均为jps中得到的PID。
jinfo -flags PID
显示JVM的参数,包括显示设置的和系统默认的。比如所用的垃圾回收器,堆的最大值等。也可以用jinfo -sysprops PID来显示System.getProperties()的内容。
jstat -gc PID
显示JVM的各个内存区使用情况(容量和使用量),GC的次数和耗时。可以通过命令jstat -class PID查看class的加载情况。
jmap -dump:file=data.hprof PID
把JVM的堆dump出来,用更高级的分析工具进行分析。命令jmap -heap PID可以查看堆的配置信息和使用情况,也很有用。
jstack PID
查看线程运行情况,检测是否有死锁。
jconsole
JDK提供的一个可视化资源查看,监控工具。
jvisualvm
JDK提供的另外一个一站式资源查看,监控,管理工具。支持插件机制,可以自己安装插件,定制jvisualvm。常用的是Visual GC插件。也可以通过该工具dump JVM的堆。也可以导入已经dump出来的堆信息进行分析。
JDK自带内存及线程分析工具的更多相关文章
- TDA - Thread Dump Analyzer (Java线程分析工具)
TDA - Thread Dump Analyzer (Java线程分析工具)http://automationqa.com/forum.php?mod=viewthread&tid=2351 ...
- 内存映像分析工具Eclipse Memory Analyzer
1. Eclipse Memory Analyzer安装 Help ->Eclipse Marketplace,搜索Memory,点击install,->confirm->同意证书内 ...
- 使用Java 线程池的利弊及JDK自带六种创建线程池的方法
1. 为什么使用线程池 诸如 Web 服务器.数据库服务器.文件服务器或邮件服务器之类的许多服务器应用程序都面向处理来自某些远程来源的大量短小的任务.请求以某种方式到达服务器,这种方式可能是通过网络协 ...
- jvm内存查看与分析工具
2.3 JVM的垃圾收集策略 GC的执行时要耗费一定的CPU资源和时间的,因此在JDK1.2以后,JVM引入了分代收集的策略,其中对新生代采用"Mark-Compact"策略, ...
- thread 线程分析工具
(1) https://fastthread.io/ 将线程 jstack pid 出来之后,压缩一下成为zip 然后 上传上去
- Linux自带-系统级性能分析工具 — Perf(转)
https://blog.csdn.net/zhangskd/article/details/37902159/
- Jvisualvm--JAVA性能分析工具
JDK自带的JAVA性能分析工具.它已经在你的JDK bin目录里了,只要你使用的是JDK1.6 Update7之后的版本.点击一下jvisualvm.exe图标它就可以运行了. 这里是VisualV ...
- java内存溢出分析工具:jmap使用实战
在一次解决系统tomcat老是内存撑到头,然后崩溃的问题时,使用到了jmap. 1 使用命令 在环境是linux+jdk1.5以上,这个工具是自带的,路径在JDK_HOME/bin/下 jmap -h ...
- JDK自带工具keytool生成ssl证书
前言: 因为公司项目客户要求使用HTTPS的方式来保证数据的安全,所以木有办法研究了下怎么生成ssl证书来使用https以保证数据安全. 百度了不少资料,看到JAVA的JDK自带生成SSL证书的工具: ...
随机推荐
- jquery扩展插件,让demo元素也可以resize
(function($, h, c) { var a = $([]), e = $.resize = $.extend($.resize, {}), i, k = "setTimeout&q ...
- 六十一 Web开发 使用Web框架
由于用Python开发一个Web框架十分容易,所以Python有上百个开源的Web框架.这里我们先不讨论各种Web框架的优缺点,直接选择一个比较流行的Web框架——Flask来使用. 用Flask编写 ...
- shell脚本学习(三)
shell echo命令 显示普通字符串: echo "I am cat_crazy.'" 注:这里的双引号可以省略 显示转义字符: 如果要输出引号,*号等需要转义才能输出,如下 ...
- Linux命令之firewall-cmd
firewall-cmd [选项] firewall-cmd是firewalld守护程序的命令行客户端.它提供了管理运行时和永久配置的接口.firewalld中的运行时配置与永久配置分开.这意味着可以 ...
- Xamarin XAML语言教程模板页面TemplatedPage
Xamarin XAML语言教程模板页面TemplatedPage 模板页面TemplatedPage 在上文中我们提到了TemplatedPage,它被称为模板页面,用来显示控件模版.Templat ...
- python datetime处理时间(转)
Python提供了多个内置模块用于操作日期时间,像calendar,time,datetime.time模块,它提供 的接口与C标准库time.h基本一致.相比于time模块,datetime模块的接 ...
- 原型开发工具 mockplus
韩梦飞沙 韩亚飞 313134555@qq.com yue31313 han_meng_fei_sha 原型开发工具 mockplus 微信(演示) - Mockup Plus Web Ap ...
- 2017 icpc 沈阳网络赛
cable cable cable Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others ...
- BZOJ 3437 小P的牧场(斜率优化DP)
[题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=3437 [题目大意] n个牧场排成一行,需要在某些牧场上面建立控制站, 每个牧场上只能建 ...
- Java字节码文件结构---概述
一.Class文件的结构概述: 是一连串的字节流(以自节为基本单位划分),里面包含的数据项按照固定的次序依次排列组成Class文件,文件内部不含分割符 当数据项的长度大于1B时候,按照高位在前的方式存 ...