1
mx1700 2017-02-22 20:14:10 +08:00 via Android
先收藏
|
2
0915240 2017-02-22 23:24:02 +08:00
关注下
|
3
abscasey OP 个人常用的有:
1 线上性能分析 如果发现某些服务过慢, 响应有问题, 耗时在哪里可以使用: trace 或 ptrace(trace 增强版, 可以通过条件加路径指定查看)各调用的耗时 如: ptrace com.test..TemplateActionItemPublish execute params[0].getAction().equals("light-render") --path=com.test.*.repository* 2 线上数据记录 当线上无法断点时, 或分析某次线上调用时, 通过 tt 来记录, 当前调用的输入和输出 3 top 线程查看 直接使用 top 命令查看, 各线程的 cpu 占用, 以及其调用栈, 省去 dump 线程再分析的各种过程 |
4
iamtz 2017-02-23 16:04:40 +08:00
网上之前见到有人介绍这个诊断工具:
byteman 是 jboss 下的一个项目,是一个非常方便的 java 分析工具,能够拦截字节码执行,执行代码和修改变量,是一个诊断问题的利器。在 linux 下使用起来非常方便,不用对目标应用做任何修改,可以动态打开目标应用的监听端口,当然仅限于 openjdk , hotspot 和 jrockit , ibm jdk 不支持。 原文: http://hushi55.github.io/2014/12/31/byteman |