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


相关推荐
典典分享指南10 小时前
用指纹算法给文章去重:mid_signature 实战
jvm·maven·intellij-idea·jetty
xiaohua100912 小时前
Linux-JVM线程查询
linux·jvm
Super 含12 小时前
Android 启动优化(三):Perfetto 实战——启动时间到底花在哪里?
jvm·算法
会编程的吕洞宾13 小时前
Full GC频繁接口卡顿?JVM排查到调优实战
jvm
不会就选b13 小时前
Linux之线程进阶(一)
jvm
互联网中的一颗神经元15 小时前
01. Go 内存管理全景架构
java·jvm·golang
互联网中的一颗神经元15 小时前
02. 核心概念与术语表
java·jvm·spring
名字还没想好☜1 天前
Java 线上内存泄漏排查实战:jmap 导堆、MAT 找 GC Roots 与四类常见泄漏
java·开发语言·jvm·内存泄漏
淡海水1 天前
01-07-运行时-GC深度剖析-内存分配回收与结构选择
jvm·windows·unity·gc
2602_959960922 天前
电商大厂Java面试:从Spring Boot、JPA、微服务到Redis、Kafka、Spring Security与监控,谢飞机的爆笑三轮问答
java·jvm·spring boot·redis·面试题