了解一下 java 自带的性能监控工具

先简单介绍一下
top指令:查看当前所有进程的使用情况,CPU占有率,内存使用情况,服务器负载状态等参数。除此之外它还是个交互命令,使用可参考完全解读top。
jps:与linux上的ps类似,用于查看有权访问的虚拟机的进程,可以查看本地运行着几个java程序,并显示他们的进程号。当未指定hostid时,默认查看本机jvm进程。
jinfo:可以输出并修改运行时的java 进程的一些参数。
jstat:可以用来监视jvm内存内的各种堆和非堆的大小及其内存使用量。
jstack:堆栈跟踪工具,一般用于查看某个进程包含线程的情况。
jmap:打印出某个java进程(使用pid)内存内的所有对象的情况。一般用于查看内存占用情况。
上面基本上都是命令行的形式,
还有两款比较方便的图形化工具
jconsole.exe 和 jvisualvm.exe jvisualvm 算是 jconsole 的升级版,咱们主要说 visual VM 吧。
他们都是基于上面的命令来实现的。

jvisualvm.exe

Java VisualVM是一个直观的图形用户界面,当基于Java技术的应用程序在指定的Java虚拟机(JVM)上运行时,可提供有关它们的详细信息。 之所以命名为Java VisualVM,是因为Java VisualVM提供了有关JVM软件的可视化信息。

Java VisualVM将多个监视,故障排除和性能分析实用程序组合到一个工具中。例如,独立工具jmap,jinfo,jstat和jstack提供的大多数功能已集成到Java VisualVM中。可以将其他功能(例如jconsole命令提供的功能)添加为可选插件。
了解一下 java 自带的性能监控工具_第1张图片

2. 主要数据

2.1. 进程

2.2. dump

2.4. 进程概述

2.5. 监视器

2.6. 线程

2.7. 抽样器

2.8. Visual GC

这是一个插件功能,可以在jvisualvm上选择工具->插件->已下载->添加插件,然后选择我们下载好的插件进行安装,如果找不到gc插件,可以扫描文章最下方我的公众号,然后回复jvisualvm gc获取。

你可能感兴趣的:(#,Java虚拟机,java,jvm,linux)