“Offer 驾到,掘友接招!我正在参与2022春招打卡活动,点击查看活动详情。”
前言
Loadrunner说实话,它是题主入主性能测试的第一款工具,使用也是最为娴熟的,放在今天来看,很多人都不会使用它。但是这不重要的,因为它并不等于性能测试,工具只是工具,重点是思想、解决问题的能力。
工欲善其事必先利其器
在面试过程中,还有招聘岗位的JD中,Loadrunner是常常出现在大众眼中。
性能瓶颈分析方法?
- 同一场景下进行分析:
1.小用户量的情况下测试
2.大用户量情况下的测试
分析的方法:
整个系统架构分析,系统响应时间消耗,利用图表分析
查看事务响应时间,通过事务摘要图分析事务响应时间,那个消耗最大(通过小用户量和大用户量的响应时间分析,查看那个事务响应时间最高),确定哪部分功能是性能的瓶颈,分析window resource图表,查看cpu
使用下列计数器标识cpu瓶颈
Processor\ Interrupts/sec
Processor\ % Processor Time
Process(process)\ % Processor Time
System\ Processor Queue Length
通过它来确定是否硬件本身出现瓶颈,或者进一步确定应该怎么去判断性能产生瓶颈的地方!
下一步去判断进程,那个进程消耗cpu最高
下边就有很多种情况需要你自己去判断,有可能是进程调用了的函数消耗了系统资源形成上边的问题,也有可能是后台数据库出现的问题(这个就要看你的系统配置是什么样的,比如你的db服务器和应用服务器都配置在一台机器上)
性能产生瓶颈有很多地方,所以需要进一判断,是否是后台数据库的问题还有待分析,是那条语句导致的问题需要进一步分析判断。
- 分析原则:
• 具体问题具体分析(这是由于不同的应用系统,不同的测试目的,不同的性能关注点)
• 查找瓶颈时按以下顺序,由易到难。
服务器硬件瓶颈-〉网络瓶颈(对局域网,可以不考虑)-〉服务器操作系统瓶颈(参数配置)-〉中间件瓶颈(参数配置,数据库,web服务器等)-〉应用瓶颈(SQL语句、数据库设计、业务逻辑、算法等)
注:以上过程并不是每个分析中都需要的,要根据测试目的和要求来确定分析的深度。对一些要求低的,我们分析到应用系统在将来大的负载压力(并发用户数、数据量)下,系统的硬件瓶颈在哪儿就够了。
• 分段排除法很有效
分析的信息来源:
•1 根据场景运行过程中的错误提示信息
•2 根据测试结果收集到的监控指标数据
错误提示分析
分析实例:
1 •Error: Failed to connect to server “10.10.10.30:8080″: [10060] Connection
•Error: timed out Error: Server “10.10.10.30″ has shut down the connection prematurely
分析:
•A、应用服务死掉。
(小用户时:程序上的问题。程序上处理数据库的问题)
•B、应用服务没有死
(应用服务参数设置问题)
例:在许多客户端连接Weblogic应用服务器被拒绝,而在服务器端没有错误显示,则有可能是Weblogic中的server元素的 AcceptBacklog属性值设得过低。如果连接时收到connection refused消息,说明应提高该值,每次增加25%
•C、数据库的连接
(1、在应用服务的性能参数可能太小了 2、数据库启动的最大连接数(跟硬件的内存有关))
2 Error: Page download timeout (120 seconds) has expired
分析:可能是以下原因造成
•A、应用服务参数设置太大导致服务器的瓶颈
•B、页面中图片太多
•C、在程序处理表的时候检查字段太大多
小结
一切不以性能分析的性能测试都不是好测试;咱们都需要知道性能测试的最终目的不是写过程、出报告,而是结果分析,得出结论协助优化,解决性能瓶颈。