生产环境 CPU 告警:
13:40 收到我们的生产环境服务器绿版 CUP 超负载告警通知。
此时心里只有一个想法,重启大法好,马上登录服务器,执行 top 发现进程 30247 和 28337 占用 CPU 为 200 多和100 多基本占用了 4 核的 3 核,整个过程大概用时 30 秒,维护群依然很平静,运营的电话也没打过来,这时候我断定,这次问题应该影响面很小,用户可能也暂时没有发现,好吧,还有时间做排查。
Arthas排查过程:
- 开启 Arthas 工具找到对应的 30247 运单模块和 28337 支付模块,选择运单模块进入:
java -jar arthas-boot.jar
- 1
- 执行 dashboard 命令,线程 35 和 12042 不正常 CUP 占用 49%:
dashboard
- 1
- 执行 thread 35 thread 12042 定位代码行:
thread 35
thread 12042
- 1
- 2