JVM(5):虚拟机性能分析和故障解决工具概述

1 工具概述

作为一个java程序员,最基本的要求就是用java语言编写程序,并能够在jvm虚拟机上正常运行,但是在实际开发过程中,我们所有的程序由于各种各样的原因,并不是总能够正常运行,经常会发生故障或者程序的性能低下等问题,此时我们就需要借助于一些jdk提供的工具来定位问题、分析问题并给出合适的解决方案。

jdk给程序员提供的辅助工具都存放在bin目录下,见下图:

jdk提供的这些工具都是使用java语言编写的,他们都来自于lib/tools.jar,解压tools.jar,然后找到它下面sun/tools,截图如下,我们很清楚的能够看到这些目录的名称和前面看到的工具的名称一致。

需要特别注意说明的是:接下来我们讲解的工具全部基于windows平台下的JDK8版本,如果JDK版本,操心系统不同,工具所支持的功能可能会有较大差别,大部分工具在JDK5中就已经提供了,但是为了避免运行环境带来的差异和兼容性问题,建议使用JDK8来验证我们讲解的内容。

2 工具分类

2.1 命令行工具

​ jps;

​ jstat;

​ jinfo;

​ jmap;

​ jhat;

​ jstack;

2.2 可视化工具

​ jconsole;

​ VisualVM;

2.3 内存分析和线程分析

相关推荐
刚入门的大一新生11 小时前
Linux-线程概念
linux·jvm
eleven_4u12 小时前
QPS如何计算,如何部署架构
java·linux·运维·jvm·中间件
qq_4523962314 小时前
第八篇:《VACUUM、自动清理与膨胀治理》
jvm·数据库·oracle
甜到心里的蛋糕15 小时前
抖音评论自动回复机器人部署实践:无头 Chrome + DeepSeek + NapCat(2C2G 云主机)
java·jvm·chrome·python·抖音·deepseek
香蕉大香蕉(06敬畏市场)17 小时前
高频八股 · JVM(7):方法区、元空间与字符串常量池
java·jvm·ai·博客·八股·大厂实习
wangchunyu1141 天前
JAVA JVM内存结构与运行时数据区
java·开发语言·jvm
骑着蜗牛撵大象3271 天前
AI Agent 工程化开发实战(三):用 StateGraph 给智能体搭一条可回放的状态流水线
java·开发语言·jvm·ai·状态管理·langgraph·stategraph
lambo mercy1 天前
持久化01——线程级持久化
java·开发语言·jvm
Pniubi1 天前
JVM的构成精讲
jvm
今天的砖头有点烫手啊3 天前
Java 对象内存布局:压缩指针、对齐填充与 JOL 实测
java·jvm