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


相关推荐
左灯右行的爱情14 分钟前
缓存并发更新的挑战
jvm·数据库·redis·后端·缓存
碎梦归途2 小时前
23种设计模式-行为型模式之命令模式(Java版本)
java·开发语言·jvm·设计模式·命令模式·行为型模式
不思念一个荒废的名字4 小时前
【刷题Day29】Python/JAVA - 03(浅)
java·开发语言·jvm·python
张帅涛_66616 小时前
golang goroutine(协程)和 channel(管道) 案例解析
jvm·golang·go
碎梦归途17 小时前
23种设计模式-行为型模式之策略模式(Java版本)
java·开发语言·jvm·设计模式·策略模式·行为型模式
sniper_fandc18 小时前
JVM(Java虚拟机)详解
java·开发语言·jvm
秋名RG1 天前
浅谈Java 内存管理:栈与堆,垃圾回收
java·开发语言·jvm
xxxmine1 天前
JVM——运行时数据区
jvm
多多*1 天前
非关系型数据库 八股文 Redis相关 缓存雪崩 击穿 穿透
java·开发语言·jvm·数据库·redis·缓存·nosql