软件性能测试总结

并发数计算公式

并发用户数的计算方法(性能测试)

计算并发用户数的五种方法

在实际性能测试中,测试人员常常会关心到并发用户数,也就是从业务角度关注究竟应该设置多少个并发数比较合理,以下是一个估算并发用户数的方法:

  (1) 计算平均的并发用户数: C = nL/T

  (2) 并发用户数峰值: C’ ≈ C+3*根号C

  公式(1)中,其中C是平均的并发用户数,n是平均每天访问用户数(login session),L是一天内用户从登录到退出的平均时间(login session的平均时间),T是考察时间长度(一天内多长时间有用户使用系统)。

  公式(2)则给出了并发用户数峰值的计算方式中,其中,C’指并发用户数的峰值,C就是公式(1)中得到的平均的并发用户数。该公式的得出是假设用户的loginsession产生符合泊松分布而估算得到的。

实例:

  假设有一个OA系统,该系统有3000个注册用户,平均每天大约有400个用户要访问该系统,对一个典型用户来说,一天之内用户从登录到退出该系统的平均时间为4小时,在一天的时间内,用户只在8小时内使用该系统。

  则根据公式(1)和公式(2),可以得到:

  C = 400*4/8 = 200

  C’≈200+3*根号200 = 242

还有一个广泛用户并发数公式:

根据系统用户数计算:

并发用户数 = 系统最大在线用户数的8%到12%

平均的并发用户数:C=n/10

并发用户数峰值:C^=r*C(通常r=2~3)

通常用访问系统的用户最大数量的10%作为平均并发用户数。


吞吐量的计算公式

系统吞吐量(TPS)、用户并发量、性能测试概念和公式

指单位时间内系统处理用户的请求数

从业务角度看,吞吐量可以用:请求数/秒、页面数/秒、人数/天或处理业务数/小时等单位来衡量

从网络角度看,吞吐量可以用:字节/秒来衡量

对于交互式应用来说,吞吐量指标反映的是服务器承受的压力,他能够说明系统的负载能力

以不同方式表达的吞吐量可以说明不同层次的问题,例如,以字节数/秒方式可以表示数要受网络基础设施、服务器架构、应用服务器制约等方面的瓶颈;已请求数/秒的方式表示主要是受应用服务器和应用代码的制约体现出的瓶颈。

当没有遇到性能瓶颈的时候,吞吐量与虚拟用户数之间存在一定的联系,可以采用以下公式计算:F=VU * R / T 单位为个/s

其中F为吞吐量,VU表示虚拟用户个数,R表示每个虚拟用户发出的请求数,T表示性能测试所用的时间

单交易基准测试

目的:单交易基准测试是在服务器没有压力的情况下,获取单支交易的处理时间,为后续场景提供依据。

执行策略:常规设置为单个用户迭代n次(比如100次)(Pacing为N秒),取平均响应时间。一般情况下不需要监控资源消耗、数据库处理等。但少数情况下,系统会出现TPS=1与TPS=100消耗的CPU资源差不多的情况,这种情况下,就是性能问题了。

单交易负载测试

目的:获取系统单支交易的最大处理能力,以及几个性能指标之间的关联关系、变化趋势,例如:响应时间随TPS的变化趋势,TPS和响应时间随并发用户数变化的趋势、CPU利用率随TPS的变化趋势(如果是近似线性的,那就说明系统设计的很不错)。

执行策略:单交易负载测试一般以逐渐加压的方式执行30分钟(无Pacing、无ThinkTime),观察处理能力拐点,需监控服务器资源消耗、数据库处理能力等。

拐点判断方式

常规1) 通过Tps走势图观察拐点。Tps走势图会随压力的增大呈抛物线状,抛物线的最高点处,即为当前测试环境下该交易的单支最大处理能力。

TPS的拐点往往也就是响应时间的拐点。

常规2) 通过资源消耗判断拐点。比如测试中Tps仍呈上升趋势,但CPU资源使用率已高达90%,就以此时Tps值为当前测试环境下该交易的单支最大处理能力。

单交易负载测试可考察系统结构及编码是否支持用户并发,是否存在性能隐患。

混合负载测试

目的:考察各交易按配比逐渐加压的情况下,系统随负载变化处理能力趋势,如响应时间、Tps、资源消耗等,极限情况下系统处理能力

执行策略:按交易配比,通过逐渐加压的方式执行1~2小时,需监控服务器资源消耗、数据库处理能力等。混合负载测试也需要判断拐点,判断方式与单交易负载测试相同,需注意各交易满足配比。

稳定性测试

目的:系统长时间正常负载下的处理能力,是否随着测试时间的增长,有响应时间变长、进程内存泄露、存储空间不足、inode数量不足、session未自动关闭、存量数据增长导致数据库执行计划不适用等隐藏问题。

执行策略:按交易配比,通过逐渐加压的方式执行8小时(也可以是4、6、12、24、24*7等,根据实际情况灵活掌握),需监控服务器资源消耗(特别是某些核心进程的内存消耗,关注进程中的Data Segment (Data + BSS + Heap))、数据库处理能力等。稳定性测试负载压力可以采用系统最大处理能力的70%或80%,或混合场景中某个压力值。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值