【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 调优的工具


相关推荐
boy快快长大1 天前
【JVM】线上JVM堆内存报警,占用超90%
jvm
鼠鼠我捏,要死了捏1 天前
深度解析JVM GC调优实践指南
java·jvm·gc
IT·陈寒1 天前
当 JVM 开始“内卷”:一次性能优化引发的 GC 战争
java·jvm·性能优化
No8g攻城狮2 天前
【异常解决】使用DateUtil.isSameDay()方法判断秒级时间戳是否属于同一天踩过的坑
java·jvm·spring boot·java-ee·springboot
天若有情6732 天前
TFword:从字符到片段,解析一个“小而精”的字符串处理工具的设计智慧
java·jvm·算法
那我掉的头发算什么2 天前
【数据结构】反射、枚举、lambda表达式以及补充知识
java·jvm·数据结构·intellij idea
沐浴露z2 天前
【JVM】详解 Class类文件的结构
java·jvm·class
爬虫程序猿2 天前
把“天猫”装进 JVM:Java 关键词商品爬虫从 0 到 1(含完整可运行代码)
java·jvm·爬虫
stillaliveQEJ2 天前
【JVM】基础概念之为什么要使用JVM
jvm
维诺菌3 天前
k8s java应用pod内存占用过高问题排查
java·jvm·云原生·容器·性能优化·kubernetes