性能瓶颈定位思路

性能瓶颈定位思路

整体思路:从前到后,从表象到内部

1.首先排查压力机自身的问题,如CPU、内存、网络、脚本

2.监控中间件的访问日志,观察相应时间耗时,出现在哪一个环节。Tomcat、nginx、apache、mysql

3.排查网络问题,监控压力机到后端服务器的网络是否出现瓶颈

4.监控服务端的所有机器(Tomcat、nginx、apache、mysql)的操作负载,CPU、内存、网络、磁盘是否达到瓶颈

5.监控应用服务器日志,查看是否存在ERROR、timeout、等报错

6.监控中间件连接数是否达到上线,比如tomcat、nginx、mysql连接数是否达到上线

7.监控应用程序的线程状态,使用jstack、jvisualvm查看是否有死锁、阻塞等情况

8.监控应用程序的jvm,使用jstat、jamp查看gc情况,是否存在内存泄漏

9.监控耗时比较长的代码方法,使用jprofiler监控应用程序

10.监控数据库,是否存在慢查询,一般数据库CPU高都是因为sql语句效率低

11.监控数据库的执行计划,是否有全表扫描,预计索引不生效的情况

12.检查系统外部依情况,如果外部依赖系统性能差,也会造成本系统性能低

13.对于不好定位的问题,可以考虑采用模块隔离法来确定问题

posted @ 2023-06-27 16:54  常疯大虾  阅读(67)  评论(0编辑  收藏  举报