-
Notifications
You must be signed in to change notification settings - Fork 7.5k
Arthas 3.4.2 Release Notes
gongdewei edited this page Sep 23, 2020
·
2 revisions
Issues: https://github.com/alibaba/arthas/milestone/23?closed=1
Releases: https://github.com/alibaba/arthas/releases/tag/arthas-all-3.4.2
原dashboard命令的一些问题:
- 线程%CPU只是一个比例,不能表明线程运行的繁忙程度。即使JVM进程很空闲,仍然可以看到某些线程%CPU很高,失去参考意义。
- 取样计算逻辑不够准确,每次只统计100ms的线程CPU,而等待的间隔时间(默认5s)并没有计算进去。
dashboard命令改进项:
- 线程%CPU 改为与Linux 命令
top -H -p <pid>
类似的统计方式,线程%CPU的大小则表明其工作繁忙程度。当JVM进程比较空闲时,看到的线程%CPU也会很低(小于%1)。 - 改进取样逻辑,计算两次取样数据的增量,等待的间隔时间会被计算进去。
- 增加统计JVM内部线程,更全面观测JVM的整体运行状况,可以快速识别GC繁忙、JIT编译繁忙的场景。
新dashboard截图:
- 优化类增强逻辑,生成的新类复制原始类的constant pool,避免JVM retransform classes 处理过程触发扩展ldc指令频繁复制method对象而激增内存(影响版本:3.3.0 ~ 3.4.1版本)。
- 修复stop后不能释放ArthasClassloader的问题
- 修复http端口启动失败后,导致arthas异常的问题