性能测试流程之打压调优篇

2017-01-22  秦天 


性能测试整体流程分为以下几部分:

本次分享一下第七部分:打压调优  

 

a)  打压过程:

打压过程并不是放那里不管,通过linux系统提供的命令,需要时刻关注被测服务器的性能指标,结合LoadRunner场景的曲线来动态判断是否存在瓶颈。LoadRunner场景曲线主要关注HPS、TPS、responsetime。服务端主要监控cpu、内存、磁盘IO、网络IO。然后从这几方面再层层深入查找问题。另外,值得强调的是,打压过程不仅需要关注被测服务器的指标,也需要关注打压agent的性能指标是否正常。比如说如果并发数一直上不去,可能是打压机本上连接数受限导致的。也可能是打压机自己出口带宽满了导致的。

b)  问题定位&修改优化&回归:

         i.      问题定位是一个比较考验个人综合技术能力的地方。也是整个性能测试的核心所在。需要强调的是,不是看到某个参数遇到问题了,就直接可以断定服务区的瓶颈就在这个地方。比如:

大量的页调入请求导致内存队列的拥塞

网卡的大吞吐量可能导致更多的  CPU 开销

大量的 CPU 开销又会尝试更多的内存使用请求

大量来自内存的磁盘写请求可能导致更多的  CPU  以及  IO 问题

          ii.  具体是哪个部分的问题,需要再根据具体的逻辑实现和推断来逐步缩小范围。主要的过程可以参考一下步骤层层深入。服务器硬件瓶颈-〉网络瓶颈(对局域网,可以不考虑)-〉服务器操作系统瓶颈(参数配置)-〉中间件瓶颈(参数配置,数据库,web服务器等)-〉应用瓶颈(SQL语句、数据库设计、业务逻辑、算法等)注:以上过程并不是每个分析中都需要的,要根据测试目的和要求来确定分析的深度。对一些要求低的,我们分析到应用系统在将来大的负载压力(并发用户数、数据量)下,系统的硬件瓶颈在哪儿就够了。

          iii.  最后就是开发优化,测试回归,这里需要强调一点:测试回归时,如果开发优化时修改了功能逻辑,则需要根据改动回归功能逻辑是否正常。不能只盯在性能指标满足了就OK了。



{测试窝原创文章,作者:曹承臻}

作者简介:曹承臻,06届大学本科毕业,数学专业,6年软件测试行业经验。



274°/2746 人阅读/0 条评论 发表评论

登录 后发表评论