1.現象
- load飆升到30+
- 線上sql連接異常
- tps正常
- sql查詢時間劇增
2.解決過程
- sql連接池不夠了,肯定是慢sql導致
- 頻繁GC,一般內存使用過多
- 結合堆棧信息,某個對象內存佔用特別多
- 某個sql查詢數量大,調用量多,全表掃描。
3.GC查看
top 命令查看資源情況,找到使用率最高的線程
sudo -u spring-boot jstat -gcutil 384 200 50 命令查看內存使用,GC回收情況
4.dump堆棧信息
sudo -u spring-boot jmap -dump:format=b,file=heap.hprof 1375
5.下載文件
scp -r [email protected]:/tmp/hsperfdata_spring-boot/heap.hprof /Users/download
解釋:root@ip:/目標文件地址 下載到那個文件地址