IntelliJ IDEA 分析器
分析器提供了关于我们应用程序性能的准确信息。它通过我们的应用程序测量了CPU、内存和堆的使用情况。它还提供了关于应用程序线程的详细信息。VisualVM工具用于测量Java应用程序的性能分析。
什么是VisualVM
这是一个可视化工具,它已与JDK捆绑在Java 6或更高版本中。它对初学者来说非常好,并且提供了关于我们应用程序性能的详细信息。
配置
在Windows中
- 下载 VisualVM 。要下载,请 点击这里 。
- 解压下载的 zip 文件。
- 在解压后的文件中找到 etc/visualvm.conf 文件。检查以下行 **visualvm_jdkhome=” ” **
- 如果已安装JDK,则应如下所示 visualvm_jdkhome=”C:\Program Files\Java\jdk-8.0.1″
在Linux中
要安装 VisualVM ,在终端中键入以下命令:
- $
sudo apt-get install default-jdk。
- $
sudo apt install visualvm。
- 要打开VisualVM,请输入 $ visualvm 。
监控应用程序
- 打开 visualvm 。
- 在左侧窗格中选择 应用程序 。
- 选择 Monitor 选项卡。
我们可以在这里看到有关CPU、堆、类和线程的使用情况。通过将鼠标悬停在任何图表上,我们还可以看到特定的使用情况。
线程测量
每个Java应用程序都有多个线程。我们可以在VisualVM工具中查看有关线程的详细信息。选择 线程 选项卡,它将显示有关我们应用程序线程的各种统计信息,例如 活动线程 和 守护线程 的数量。我们可以在下图中看到 运行中 、 睡眠中 、 等待中 、 停止中 和 监测中 的线程。
抽样应用程序
VisualVM提供了有关CPU、内存抽样和内存泄漏的信息。要进行抽样,请选择应用程序并选择Sampler标签。 Sampler 标签有三个子标签:CPU标签、内存标签和停止标签。
CPU抽样
要进行CPU抽样,请点击 CPU按钮 。将出现以下截图。
内存取样
要进行内存取样,请点击 内存按钮 。将会出现以下截屏。
内存泄漏
内存泄漏是指在应用程序中存在一些不再使用的对象,但垃圾回收器无法识别它们为未使用。程序运行期间,它会在堆区域中填满一个不再使用的对象。当由于不必要的对象存储而导致内存空间已满时,我们可以认为这是内存泄漏的迹象。