千锋教育-做有情怀、有良心、有品质的职业教育机构

手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

当前位置:首页  >  技术干货  > 如何使用在线调试工具Arthas?

如何使用在线调试工具Arthas?

来源:千锋教育
发布人:wjy
时间: 2022-09-15 15:39:09 1663227549

  举几个例子

  1、查看最繁忙的线程,以及是否有阻塞情况发生?

  场景:我想看下查看最繁忙的线程,以及是否有阻塞情况发生? 常规查看线程,一般我们可以通过 top 等系统命令进行查看,但是那毕竟要很多个步骤,很麻烦。

如何使用在线调试工具Arthas1

  2、确认某个类是否已被系统加载?

  场景:我新写了一个类或者一个方法,我想知道新写的代码是否被部署了?

如何使用在线调试工具Arthas2

  3、如何查看一个class类的源码信息?场景:我新修改的内容在方法内部,而上一个步骤只能看到方法,这时候可以反编译看下源码。

如何使用在线调试工具Arthas3

  4、如何跟踪某个方法的返回值、入参?场景:我想看下我新加的方法在线运行的参数和返回值?

如何使用在线调试工具Arthas4

  5、如何看方法调用栈的信息?场景:我想看下某个方法的调用栈的信息?

如何使用在线调试工具Arthas5

  运行此命令之后需要即时触发方法才会有响应的信息打印在控制台上。

  6、找到最耗时的方法调用?

  场景:testMethod这个方法入口响应很慢,如何找到最耗时的子调用?

如何使用在线调试工具Arthas6

  运行此命令之后需要即时触发方法才会有响应的信息打印在控制台上,然后一层一层看子调用。

  7、如何临时更改代码运行?场景:我找到了问题所在,能否线上直接修改测试,而不需要在本地改了代码后,重新打包部署,然后重启观察效果?

如何使用在线调试工具Arthas7

  如上,是直接更改线上代码的方式,但是一般好像是编译不成功的。所以,最好是本地ide编译成 class文件后,再上传替换为好!

  总之,已经完全不用重启和发布了!这个功能真的很方便,比起重启带来的代价,真的是不可比的。比如,重启时可能导致负载重分配,选主等等问题,就不是你能控制的了。

  8、我如何测试某个方法的性能问题?

如何使用在线调试工具Arthas8

tags:
声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。
10年以上业内强师集结,手把手带你蜕变精英
请您保持通讯畅通,专属学习老师24小时内将与您1V1沟通
免费领取
今日已有369人领取成功
刘同学 138****2860 刚刚成功领取
王同学 131****2015 刚刚成功领取
张同学 133****4652 刚刚成功领取
李同学 135****8607 刚刚成功领取
杨同学 132****5667 刚刚成功领取
岳同学 134****6652 刚刚成功领取
梁同学 157****2950 刚刚成功领取
刘同学 189****1015 刚刚成功领取
张同学 155****4678 刚刚成功领取
邹同学 139****2907 刚刚成功领取
董同学 138****2867 刚刚成功领取
周同学 136****3602 刚刚成功领取
相关推荐HOT
开班信息
北京校区
  • 北京校区
  • 大连校区
  • 广州校区
  • 成都校区
  • 杭州校区
  • 长沙校区
  • 合肥校区
  • 南京校区
  • 上海校区
  • 深圳校区
  • 武汉校区
  • 郑州校区
  • 西安校区
  • 青岛校区
  • 重庆校区
  • 太原校区
  • 沈阳校区
  • 南昌校区
  • 哈尔滨校区