jvm调试和查看工具

1.默认自带软件jconsole.exe

位置:C:\Program Files\Java\jdk-17\bin\jconsole.exe

Arthas是阿里开源的JVM调优工具,非常好用,很多公司都使用这个工具。

Arthas提供了强大的调优功能,有很多好用的命令。JDK自带的调优命令arthas基本都实现了。

* 下载:curl -O https://arthas.aliyun.com/arthas-boot.jar 参考:https://arthas.aliyun.com/doc/install-detail.html#arthas-boot

* 运行:java -jar arthas-boot.jar

* 运行后可以:

* 1.可以看到检测到的进程编号,需要看哪个进程,直接输入进程编号。进入进程后,可以使用很多命令:

* 1.1.dashboard: 可以查看一个仪表盘,可以综合的简单查看这个进程相关的运行情况。

* 1.2.jvm: 类似jinfo命令,查询相关参数使用情况,包括使用的垃圾回收器是什么

* 1.3.thread: 把这个进程中的所有线程展示出来,这个很有用。和jstack有点像,但是比它好用。

* a.找到对应的线程后,使用 thread tid查看线程的详细执行情况。

* b.thread | grep XXX。过滤功能,所以建议线程要起名字。

* c.thread -b,可以直接找到有死锁的线程的名字

* 3.命令 -help : 查看具体命令的用法

* 4.查找类 sc; 查找方法 sm; 找到类名和方法名称后使用trace或monitor跟踪方法的整个运行情况,相关的统计。

* 5.heapdump: 类似jmap,可以将堆内存dump下来,使用工具分析。这个命令也会暂停程序,可以内测使用。

* 6.jad 类名: 反编译某个类,类似javap。分析线上运行的版本是不是最新的代码,是不是被别人提交的代码覆盖过。

相关推荐
天河归来8 小时前
第三方接口不稳定,如何让核心任务继续完成
java·大数据
HideF8 小时前
Linux sudo
linux
FlightYe9 小时前
视界原理之3D视频(四):裸眼、眼镜和头显
android·linux·c++·3d·ffmpeg·音视频
Knight_AL9 小时前
Java 文件下载时文件名中的 `#` 被转换成 `%23`?一次 URL 编码与解码问题排查
java·开发语言
蹊黎9 小时前
Linux 下用 C 语言实现进度条
linux·c语言·单片机
砚底藏山河10 小时前
python量化自定义周期 K 线合成
java·开发语言·数据库·python·金融
猿究院_夏燊10 小时前
MySQL 的四种隔离级别
java·数据库·mysql
牛马鸡niumasi11 小时前
【Linux】C语言文件操作
linux
say_fall11 小时前
【Linux系统编程】Ext 文件系统:磁盘与存储、文件与目录、现代计算机究竟如何寻找文件
linux·运维·服务器·数据库·c++
码流子11 小时前
移动收费怎么做?手持终端+App+收费中心的架构实践
java·开发语言·架构