JVM GC调优/线上问题排查工具篇 笔记

1 篇文章 0 订阅
1 篇文章 0 订阅

GC调优工具篇

在这里插入图片描述
工具常用命令
jps

  -l 显示路径
  -v 显示虚拟机参数
  -m 显示程序参数 

jstat

-class 类加载情况
-gc  [pid][循环时间间隔][循环次数] 堆各个区空间情况/各区gc次数/各区gc花费时间

jinfo jvm配置信息工具

-flags  显示进程的配置参数
-flag VM配置项    可以在jvm不关闭的情况下动态修改参数(只针对manageable的jvm参数)

jmap

-heap 打印堆快照
-histo[:live] 打印对象的内存占用情况   live 显示存活的对象
-dump:live,format=b,file=abc.bin   导出堆转储文件, 存活的对象,二进制文件,文件名abc.bin     (此功能慎用,会占用磁盘空间,会导致程序卡顿)

jhat

jhat 转储文件名     会动态分析jmap转储文件,然后开启一个http服务供浏览器查看堆转储文件的分析结果

jstack

-l 输出线程信息

一些用于排查的JVM参数

-XX:+HeapDumpOnOutOfMemoryError   当产生OOM时自动生成堆转储文件(磁盘空间足够的情况建议常开)
-XX:+HeapDumpPath  堆转储文件生成路径
-XX:+PrintGC   (排查完记得关闭)
-XX:+PrintGCDetails  (排查完记得关闭)
-XX:+PrintGCTimeStamps  (排查完记得关闭)
-XX:+PrintHeapAtGC 在GC时打印堆信息 (排查完记得关闭)
-XX:+TraceClassLoading 打印类加载信息
-XX:

阿里开源的Arthas: java诊断工具 官方文档:https://alibaba.github.io/arthas/

1.启动: java -jar arthas-boot.jar
2.选择要附着的进程号
3.进入arthas控制台
4.命令:
	dashboard  输出该进程总览
	q 退出
	thread [-n 显示最占cpu的前n个线程 -b 阻塞的线程  -i 1000 采样时间间隔] 显示线程信息
	jad 类路径  反编译类的内容(可用于查看类是否更新成最新内容)
	trace 类路径 方法名   监测方法耗时
	monitor -c 5 类路径 方法名    5秒钟刷新一次统计方法耗时/成功/失败等信息
	watch 类路径 方法名 '{param[0],returnObj}'  监测方法的入参[0],返回值

*****其他很多命令...去官网文档找
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值