性能测试调优思路

一、性能瓶颈分析方法

1.1.1. 根据经验性能瓶颈分析方法

1)错误分析方法

错误分析的方法就是针对性能测试过程中错误信息的分析方法,错误信息产生的位置可以是测试工具端如loadrunner,也可以是应用服务器、数据库服务器端产生的错误日志。其基本方法就是根据错误信息,找到出错的测试脚本位置,如果是应用服务器端报出的错误,在应用服务器上查找出错原因,如果是通讯或其他错误,则需要分析可能的出错原因,逐一验证。

错误分析实例1:

Loadrunner报错:

Error: Failed to connect to server “99.1.73.113:8080”: [10060] Connection

Error: timed out Error: Server “99.1.73.113” has shut down the connection prematurely

错误分析:

可能的错误原因:

  1. 应用服务器端进程死掉:需检查应用服务器端程序,检查是什么原因导致的。

2.应用服务器没有死:那么可能是应用服务器参数配置问题,如三方存管测试过程中,SNA Server配置的SNA通讯通道数为60,在每台SNA Server上的用户数超过100时就会频繁发生该错误

3.数据库连接:如果服务器端是数据库,需检查数据库连接数等参数是否设置得太小

错误分析实例2:

Loadrunner报错:

Error: Page download timeout (120 seconds) has expired

错误分析:

可能的错误原因:

1 超时时间设置过长,应用服务器压力太大,处理不了这么多请求,可检查应用服务器的资源消耗情况即可发现是否此类问题

2 页面中图片或Flash等内容太多,导致页面内容过大

3 程序处理过程中检查的内容过多,导致处理时间过长,以致超时

2)监控指标分析方法

对监控指标的分析,主要有三种方法:

1.分析监控指标数据:如服务器CPU利用率通常应在70%以下,专用的数据库服务器CPU利用率可接受的上限为80-85%,如果CPU利用率持续在95%以上,说明CPU是瓶颈;又如平均交易响应时间,如果该数据较大,

可进一步根据时间戳分析在各阶段花费的时间,如网络时间、Web服务器花费的时间、数据库服务器花费的时间等,再进一步细分,可定位到具体的函数或语句上,找出时间花费超出通常情况的语句,分析其原因。

2.分析监控指标的变化趋势:检查指标变化趋势是否正常,有没有突然的急剧变化,如通常情况下,平均交易响应时间基本随压力的增加逐步加长(程序刚启动时,系统需要把应用装载到内存里,此时平均交易响应时间可能会长一些),

如果在上升过程中,发生短时间该数据急剧降低的情况,就需要同时检查这段时间是否有错误产生或其他情况导致平均交易响应时间急剧变化。

3.分析相关指标关联程度:在发生性能问题时,通常我们监控了多种指标,在发现某个指标变化趋势异常时,可能还无法马上确定是什么原因导致的,Loadrunner提供了一种方法,可以分析其他指标变化趋势与指定指标变化趋势的关联程度,

包括正相关和负相关的程度,便于我们发现问题产生的原因。如上述平均交易响应时间的变化趋势如果是由错误导致的,那么平均交易响应时间曲线就会与错误统计曲线有很强的相关性。

♦这里指的性能指标可以是操作系统的系统资源,可以是应用服务器性能指标,也可以是数据库性能指标。

监控指标分析实例:
性能测试调优思路_第1张图片

如上图所示(loadrunner平均响应时间图),交易平均响应时间随着时间的推移,越来越大。根据我们测试经验,这种情况有可能是以下2个原因造成的:

1) 应用端内存泄露

2)数据库表数据量逐步增加,加上没有合理索引,导致响应时间越来越大;

性能分析步骤:

  1. 观察loadrunner端的性能指标变化,通过指标变化情况,做出初步的假设;

     2. 监控应用服务器和数据库服务器资源性能指标变化情况;
    
     3. 如假设应用端内存泄露,则需要监控应用GC日志,通过查看GC日志,就能验证假设是否成立;
    
     4. 如假设数据库SQL问题,则需要监控数据库SQL执行时间 的变化情况,如发现某个SQL响应时间越来越长,则可以验证这个假设是成立的。
    
    5. 提出解决方案,并修改bug。
    
    6. 性能回归测试:证实性能问题是否消除
    

你可能感兴趣的:(性能测试,性能测试)