【JVM基础17】——实践-说一下JVM调优工具

目录

  • [1- 引言:](#1- 引言:)
  • [2- ⭐核心:](#2- ⭐核心:)
  • [3- 小结:](#3- 小结:)
    • [3-1 说一下 JVM 调优的工具](#3-1 说一下 JVM 调优的工具)

1- 引言:

命令工具

  • jps------进程状态信息
  • jstack------查看Java进程内线程的堆栈信息
  • jmap------查看堆转信息
  • jhat------堆转快照分析工具
  • jstat------JVM统计监测工具

可视化工具

  • jconsole------对于 JVM 的内存、线程、类的监控
  • VisualVM------能够监控线程、内存的情况

2- ⭐核心:

2-1 命令工具

jps

  • 查看 Java 正在运行的进程状态信息

jstack

  • 查看 Java 进程内线程的堆栈信息,通过 jstack + 进程 id 的方式
  • 假设产生了死锁,就可以使用 jstack 来查看当前线程运行的情况。

jmap

  • 用于生成堆转内存快照、内存使用情况
java 复制代码
jmap -hearp pid
  • format=b 表示以 prof 二进制格式转储 Java 堆的内存
  • file= 用于指定快照 dump 文件的文件名。

什么是 dump 文件?

  • 是一个进程或系统在某一给定的时间的快照。比如在进程销贵时,甚至是任何时候,我们都可以通过工具将系统或某进程的内存备份出来供调试分析用 。
  • dump 文件中包含了程序运行的模块信息,线程信息,堆栈调用信息,异常信息等数据,方便系统技术人员进行错误排查。

jstat

  • 是 JVM 统计监测工具,可以用来显示垃圾回收信息、类加载信息、新生代统计信息等。

①总结垃圾回收统计

java 复制代码
jstat -gcutil pid


②垃圾回收统计

java 复制代码
jstat -gc pid

2-2 可视化工具

jconsole

  • 用于对 jvm 的内存、线程、类 的监控,是一个基于 jmx 的 GUI 性能监控工具。
  • 打开方式:java 安装目录 bin目录下,直接启动 jconsole.exe 就行

VisualVM

  • 能够监控线程,内存情况,查看方法的 CPU 时间和内存中的对象,已被 GC 的对象,反向查看分配的堆栈
  • 打开方式:java安装目录bin目录下直接启动 **jvisualvm.exe** 就行
  • 查看运行中的 dump 文件。

3- 小结:

3-1 说一下 JVM 调优的工具


相关推荐
2201_76104059几秒前
C++如何利用YAML存储复杂的数学矩阵_Eigen库结合yaml-cpp用法【实战】
jvm·数据库·python
2301_775148152 分钟前
CSS如何实现固定头部布局_利用position-fixed实现顶部常驻
jvm·数据库·python
yejqvow123 分钟前
Python测试中如何控制顺序_使用pytest-ordering自定义执行流
jvm·数据库·python
m0_613856298 分钟前
mysql如何使用IF函数_mysql简单二元逻辑转换
jvm·数据库·python
_F_y10 分钟前
SQLite3的基础使用
jvm·数据库·sqlite
pele16 分钟前
如何在 Go 项目中安全、高效地共享 MySQL 数据库连接
jvm·数据库·python
qq_3422958219 分钟前
SQL如何用SQL子查询查找最大值对应行_关联主键优化方案
jvm·数据库·python
m0_7436239219 分钟前
golang如何使用iota常量生成器_golang iota常量生成器使用教程
jvm·数据库·python
baidu_3409988220 分钟前
mysql如何排查连接数爆满原因_mysql show processlist分析
jvm·数据库·python
baidu_3409988227 分钟前
如何用HTML函数工具测试显卡性能_基准跑分详解【详解】
jvm·数据库·python