本站内容均来自网络转贴内容,如涉及版权问题,请及时联系我,我会及时删除。。。
性能测试及性能调整概述(转贴)
上一篇 /
下一篇 2007-04-03 13:32:56
/ 个人分类:性能测试
明确了具体的性能要求后,可以开始进行测试,确定应用程序是否满足这些要求。性能测试假定应用程序稳定、可靠地运行。因此,在测试中消除尽可能多的变数很重要。例如,代码中的错误可以导致出现性能问题,甚至掩盖性能问题。要精确地比较不同性能测试的结果,应用程序必须正确地工作。如果调整过程修改了组件的实现,则重新测试应用程序的功能尤其重要。应用程序必须通过功能性测试后才可以测试性能。除了应用程序更改外,硬件、网络通信量、软件配置、系统服务等诸多方面也会发生意外的更改。控制应用程序更改很重要。
2M_S
mQ
c.||u0测量性能
6`mCT o!L1u;U!`j0要正确地调整性能,必须准确完整地记录每次测试的结果并进行维护。记录应包括:51Testing软件测试网J4h:k7O pU?
- 精确的系统配置,尤其是与前几次测试的不同之处
- 原始数据和性能监视工具计算的结果
这些记录不仅指示应用程序是否达到性能目标,而且有助于识别未来性能问题的潜在原因。
*F@3d-I+sH,Ci_+j%~0性能调整是与性能管理相关的主要活动。当性能降到最基本的水平时,性能调整由查找和消除瓶颈组成,瓶颈是在服务器中的某个硬件或软件接近其容量限制时发生和显示出来的情况。51Testing软件测试网9]@,Z*sa
在开始性能调整循环之前,必须做一些准备工作,为正在进行的性能调整活动建立框架。您应该:51Testing软件测试网*b
e9KQ0D%Wz
- 识别约束 - 站点的业务实例确定优先级,而优先级又设立边界。约束(如可维护性和预算限制)在寻求更高的性能方面是不可改变的因素。必须将寻求性能提高的努力集中在不受约束的因素上。
- 指定负载 - 这涉及确定站点的客户端需要哪些服务,以及对这些服务的需求程度。用于指定负载的最常用度量标准是客户端数目、客户端思考时间以及负载分布状况;其中客户端思考时间是指客户端接收到答复到后面提交新请求之间的时间量,负载分布状况包括稳定或波动负载、平均负载和峰值负载。
- 设置性能目标 - 性能目标必须明确,包括识别用于调整的度量标准及其对应的基准值。总的系统吞吐量和响应时间是用于测量性能的两个常用度量标准。识别性能度量标准后,必须为每个度量标准建立可计量的基准值与合理的基准值。51testing软件测试博客:j*r^p|ej!h"^51Testing软件测试网9|-JQ e{~ i
注意 由于性能和容量的关系如此密切,因此您识别的约束、负载和目标也适用于容量规划。
建立了性能调整的边界和期望值后,可以开始调整循环,这是一系列重复的受控性能试验。51Testing软件测试网 \.t:h)K%^w/A
调整循环
:k.Y3w%{QP0重复以下所示的四个调整循环阶段,直到获得在开始调整过程前建立的性能目标。51Testing软件测试网:ot7|_1i-s(|M
调整循环
U+w&N7]4X P[0/[6O DE2yKM&qno0收集
:XH
A._5Oy3[3F`
Q0收集阶段是任何调整操作的起点。在此阶段,只是使用为系统特定部分选择的性能计数器集合来收集数据。这些计数器可用于网络、服务器或后端数据库。
#i8}$UaA+a)iP$[s/\0不论调整的是系统的哪一部分,都需要根据基准测量来比较性能改变。需要建立系统空闲以及系统执行特定任务时的系统行为模式。因此,可以使用第一遍数据收集来建立系统行为值的基准集。基准建立在系统的行为令人满意时应该看到的典型计数器值。
m,~o0B"l~N+G0注意 基准性能是一个主观的标准:必须设置适合于工作环境且能最好地反映系统工作负荷和服务需求的基准。