排查工具:logstore、skywalking、Arthas
慢接口优化思路
I/O型 (涉及网络、磁盘IO的任务)
- 依赖接口耗时比重多
- 慢SQL(SQL本身写的有问题、索引优化、分表分库、读写分离、引入缓存)
CPU耗时型(要进行大量的计算,消耗CPU资源) - for循环
- 算法不够“高效”
网络
流量
系统 - JVM负载高、堆内存设置不合理
- CPU核数少
排查问题的手段:
从下游到上游依次查看日志排查、应用日志、GC日志、系统日志
Arthas快速安装
curl -O https://arthas.aliyun.com/arthas-boot.jar -- 下载Jar包
java -jar arthas-boot.jar --启动arthas,选择java进程
查看方法内部调用路径,并输出方法路径上的每个节点上耗时
- trace ClassName methodName