您的位置:首页 > 其它

jConsole,jvisualvm和jmap使用

2015-11-04 15:09 459 查看

JConsole

JConsole 是一个内置 Java 性能分析器,可以从命令行或在 GUI shell 中运行。可以轻松地使用 JConsole来监控 Java 应用程序性能和跟踪 Java 中的代码。

1- 启动

使 JDK 在 PATH 上,从命令行启动,运行 jconsole

2- 连接

2.1- 本地连接

2.2- 远程连接

无认证连接设置

?
图示如下





还有一种启动方式:jconsole.exe 192.168.3.228:8888

3- 性能分析

3.1- 概述: Displays overview information about the Java VM and monitored values.





对着图点击右键可以保存数据到CSV文件,以后可以使用其他工具来分析这些数据。

3.2- 内存: 显示内存使用信息

查看堆内存,非堆内存,内存池的状况总体内存的分配和使用情况以及不同的GC进行垃圾回收的次数和时间。

3.3- 线程: 显示线程使用信息

3.4- 类: 显示类装载信息

3.5- VM摘要: 显示java VM信息

3.6- MBeans: 显示 MBeans

jvisualvm

升级版的jConsole。

从命令行启动,运行 jvisualvm 。





jmap

用来显示Java进程的内存映射。

1-默认视图

查看连接到进程里的本地类库。

?
2-堆视图

堆大小是年轻代、年老代加上PermGen区总和。年轻代内部有伊甸园和幸存者乐园。

?
以上信息看不到堆内的信息,要知道内存都到哪了去了,就得使用柱状视图。

3-柱状视图

jmap使用类型内部名称。如:字符数组会写成 [C 。

?
以上只是输出的一部分。输出中有很多占用内存的 [C 实体。

存货对象的查看:

?
比较一下字符数据是不是降低了不少,说明有好多等待回收的垃圾。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: