arthas学习笔记

一.java自带的常用命令

1.jps: 列出所有的java相关进程
2.jinfo + 进程: 该java进程的详细信息
3.jstat -gc 进程 + 500: 每500毫秒刷新gc情况
4.jmap -histo + 进程:查看所有对象的占用情况
5.jhsdb jmap --heap --pid 1(进程):查看堆内存使用情况

二.arthas常用命令

官网:https://arthas.aliyun.com/doc/commands.html

https://www.bilibili.com/video/BV1kg411q7Td?spm_id_from=333.788.player.switch\&vd_source=12d5954938d20d50645e227a6a728c76\&p=6

1. jad + 类全路径:反编译出类的完整代码

该命令可以用于排查线上环境发布的代码。

2. thread: 查看当前线程信息,查看线程的堆栈

例如:thread -3 : 展示最忙的前3个线程,然后根据 thread+现成号找到线程堆栈

3. trace :查看某个方法的性能瓶颈

线上一个接口可能有很多链条,能够定位出瓶颈在哪个链。

4. watch :线上debug

例如,你想查看某个方法传入某个参数后,返回值是什么或者是否抛异常,就可以使用该命令,命令执行后,调用线上接口,让其执行到某个方法,观察输出。

5. tt :查看某个方法一段时间的调用情况
6. redefine :实现不停服务,热修改代码
相关推荐
有谁看见我的剑了?21 分钟前
stress 服务器压力测试的工具学习
服务器·学习·压力测试
有谁看见我的剑了?21 分钟前
stress-ng 服务器压力测试的工具学习
服务器·学习·压力测试
牛奶咖啡131 小时前
学习设计模式《十二》——命令模式
学习·设计模式·命令模式·队列请求·宏命令·可撤销恢复操作·参数化配置
余厌厌厌1 小时前
go语言学习 第9章:映射(Map)
服务器·学习·golang
委婉待续1 小时前
Qt的学习(一)
开发语言·qt·学习
哆啦A梦的口袋呀2 小时前
基于Python学习《Head First设计模式》第七章 适配器和外观模式
python·学习·设计模式
笑鸿的学习笔记2 小时前
虚幻引擎5-Unreal Engine笔记之SET节点的输出引脚获取设置后的最新变量值
笔记·ue5·虚幻
恰薯条的屑海鸥2 小时前
零基础在实践中学习网络安全-皮卡丘靶场(第十期-Over Permission 模块)
学习·安全·web安全·渗透测试·网络安全学习
草莓熊Lotso2 小时前
【数据结构初阶】--算法复杂度的深度解析
c语言·开发语言·数据结构·经验分享·笔记·其他·算法
东京老树根2 小时前
SAP学习笔记 - 开发27 - 前端Fiori开发 Routing and Navigation(路由和导航)
笔记·学习