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 :实现不停服务,热修改代码
相关推荐
云上艺旅15 小时前
K8S学习之基础七十四:部署在线书店bookinfo
学习·云原生·容器·kubernetes
你觉得20515 小时前
哈尔滨工业大学DeepSeek公开课:探索大模型原理、技术与应用从GPT到DeepSeek|附视频与讲义下载方法
大数据·人工智能·python·gpt·学习·机器学习·aigc
A旧城以西17 小时前
数据结构(JAVA)单向,双向链表
java·开发语言·数据结构·学习·链表·intellij-idea·idea
无所谓จุ๊บ17 小时前
VTK知识学习(50)- 交互与Widget(一)
学习·vtk
FAREWELL0007517 小时前
C#核心学习(七)面向对象--封装(6)C#中的拓展方法与运算符重载: 让代码更“聪明”的魔法
学习·c#·面向对象·运算符重载·oop·拓展方法
吴梓穆17 小时前
UE5学习笔记 FPS游戏制作38 继承标准UI
笔记·学习·ue5
Three~stone18 小时前
MySQL学习集--DDL
数据库·sql·学习
齐尹秦18 小时前
HTML 音频(Audio)学习笔记
学习
V---scwantop---信18 小时前
英文字体:大胆都市街头Y2Y涂鸦风格品牌海报专辑封面服装字体 Chrome TM – Graffiti Font
笔记·字体
瞌睡不来18 小时前
(学习总结32)Linux 基础 IO
linux·学习·io