负载测试(Stress Testing)简介
在实际工作中,负载测试方法和压力测试方法往往被放在一起谈论,因此很容易混淆,其实它们的区别是很明显的。
【负载测试方法】
负载测试(Load
Testing)方法通过在被测试系统上不断增加负荷,直到事先选定的性能指标(比如响应时间),变为不可接受或系统的某类资源使用已经达到饱和状态。负载测试方法实际就是一个不断加压,直到找到系统不可用临界点的过程,形象地说,那一点正是"强弩之末"。
【负载测试方法与举重比赛】
在5.1.7节我们把压力测试和体操比赛的规定动作相类比,在这里我们将负载测试方法类比为举重比赛,如图5-4所示。在比赛中,选手不断地增加重量,挑战自己的极限,直到杠铃加到某一个重量时,3次试举都失败。这一重量就是举重比赛的最终结果。
|
图5-4
举重比赛与负载测试有相同之处 |
通过负载测试方法,我们可以发现系统的处理极限点在哪里。
负载测试的特点
负载测试方法有如下几个特点。
(1)它的主要目的在于找到系统处理能力的极限,为系统进一步优化做参考。另外,这种测试也可以用来比较不同的优化方法对于性能极限的提升,因此也可以称之为可扩展性测试(Scalability
Testing)。这个名词可以用图5-5清晰地表述出来。
在图5-5中,2条曲线分别代表两种优化方法经历负载测试的结果。A方法的性能极限在A点,B方法的性能极限在B点。根据负载测试的定义,比A、B两点值小的部分都是系统的安全运行区间。由于B的数值要大于A,说明采用B方法优化,系统的可扩展性提高了。
|
图5-5
负载测试用于优化方法的比较:B好于A |
(2)负载测试方法的操作是一个不断加压的过程。负载测试方法是一个"性能指标记录--增加负荷"的操作循环,直到预定被关注的性能指标不再令人满意。这个极限点在测试结果中的表示类似这样的形式:"在给定条件下当前Web应用将最多允许10000个并发用户访问"、"在给定条件下当前Web应用最多能够在1分钟内处理1000次用户对数据库的修改"等。常见的在负载测试方法中被关注的性能指标包括:Web应用的响应时间、Web服务器平均CPU利用率等,它们的具体数值需要根据实际情况来调整。
(3)负载测试方法要考虑被测Web应用的实际业务负荷量与正确的使用场景,以保证测试结果具有参考价值。
【实战演练:教训】
在这方面,笔者的同事曾经有一个教训。有一个网站,可以通过Web直接访问,也可以通过RSS进行订阅。在网站发布之前,网站技术部门的所有工程师都认为绝大部分用户都是通过Web来访问的,因此,在时间紧迫的情况下,重点测试了Web访问的性能,对于RSS相关代码测试的就很少。结果在网站上线之后,他们惊奇地发现,大部分用户访问都是通过RSS来完成的,因为负载测试做的很简略,结果每过多久服务器就被拖的几乎无法访问了。可见,对于负载测试,乃至整个性能测试而言,模拟真实的应用场景是多么的关键。
原文: http://book.51cto.com/art/201008/218491.htm
分享到:
相关推荐
Web服务的稳定性、负载测试和可靠性测试是保证系统性能和用户体验的关键环节。本文将深入探讨这些测试的概念,方法以及在实际测试过程中的应用。 首先,稳定性测试是衡量系统在长时间运行下保持正常服务的能力,...
CPU负载测试是评估计算机性能和稳定性的重要环节,特别是在进行电脑维护和故障排查时,它能够帮助我们检测系统在高压力下的表现。标题提到的“CPU负载测试工具 电脑维修测试用”显然是一款专为此目的设计的软件。...
库卡机器人负载测试
在当今信息技术迅速发展的背景下,软件性能与负载测试成为确保软件质量的重要环节。本文将详细介绍如何利用Visual Studio 2010和SQL Server进行软件性能和负载测试的过程,以及如何对测试结果进行统计学分析。 首先...
《LR9.5负载测试中文教程》是一份深入解析LoadRunner 9.5版本的中文教育资源,旨在帮助用户掌握在中文环境下如何进行高效且准确的负载测试。LoadRunner是一款广泛应用于企业级应用性能测试的工具,它能模拟大量并发...
在IT行业中,负载测试是确保Web应用程序稳定性和性能的关键步骤。简单来说,负载测试就是模拟大量用户同时访问网站或应用,以检验其在高压力下的性能表现。在本例中,我们关注的是一个名为"简单的web负载测试工具",...
在IT行业中,负载测试是一项至关重要的任务,它用于评估软件系统在预期或超过预期的用户负载下的性能。LoadRunner是一款由HP(现被Micro Focus收购)开发的强大性能测试工具,广泛应用于企业级应用的性能验证。本...
在这个特定的场景下,我们关注的是“Loadrunner负载测试中的浏览器缓存设置”。了解如何在LoadRunner中正确设置浏览器缓存对于获取真实用户行为的数据至关重要,因为这直接影响到测试结果的准确性。 浏览器缓存是...
性能测试定义 性能测试概念 负载测试 压力测试 性能测试工作原理及应用角度,模型。测试管理流程,测试人员安排,测试工作产品,性能测试的过程,周期,系统需求应用配置需求用户手册需求,测试计划,加案例说明。 ...
【基于GO语言开发的高性能负载测试工具】 Go(也称为Golang)是一种由Google开发的开源编程语言,设计时特别注重简洁、效率和可移植性。由于其内建的并发模型和高效的垃圾回收机制,Go语言非常适合用于开发高性能的...
【LoadRunner负载测试实例详解】 LoadRunner是一款强大的性能测试工具,尤其在软件性能评估和压力测试方面具有广泛的应用。在本文中,我们将深入探讨如何利用LoadRunner进行负载测试,包括设置虚拟用户、创建测试...
**Go-FBender:通用网络协议的负载测试命令行工具** Go-FBender是一个由Go语言编写的高效、轻量级的命令行工具,专门设计用于执行通用网络协议的负载测试。它允许用户对各种网络服务进行压力测试,评估其在高并发...
图解说明如何使用VS2008做负载测试并分析结果
讲解了LoadRunner负载测试下的一些概念和性能分析
性能测试与负载测试、压力测试 性能测试是评价系统或组件的性能是否和具体的性能需求一致的测试方法。它关注的是系统性能是否和具体的性能需求相一致,评价系统或组件在规定的时间内和特定的条件下响应用户或系统...
"Windows下负载测试工具"就是针对这一需求而设计的软件,它能够模拟多用户并发操作,以测试系统在高负载条件下的运行状态。这种工具广泛应用于服务器性能评估、硬件测试以及系统优化等场景。 1. **CPU负载测试工具*...