您还未登录! 登录 | 注册 | 帮助  

您的位置: 首页 > 软件测试技术 > 性能测试 > 正文

性能测试常用概念及计算公式

发表于:2017-01-09 作者:AmilyAmily 来源:

  一、概念
  1、并发连接数-SBC(Simultaneous Browser Connections)
  并发连接数指的是客户端向服务器发起请求,并建立了TCP连接。每秒钟服务器链接的总TCP数量,就是并发连接数。
  2、请求数-QPS(Query Per Second)/RPS(Request Per Second)
  请求数有2个缩写,可以叫QPS也可以叫RPS。单位是每秒多少请求。Query=查询,也相当于请求。请求数指的是客户端在建立完连接后,向http服务发出GET/POST/HEAD数据包,服务器返回了请求结果后有两种情况:
  http数据包头包含Close字样,关闭本次TCP连接;
  http数据包头包含Keep-Alive字样,本次连接不关闭,可继续通过该连接继续向http服务发送请求,用于减少TCP并发连接数。
  3、并发用户数
  并发用户数量,有两种常见的错误观点。一种错误观点是把并发用户数量理解为使用系统的全部用户的数量,理由是这些用户可能同时使用系统;还有一种比 较接近正确的观点是把用户在线数量理解为并发用户数量。实际上,在线用户不一定会和其他用户发生并发,例如正在浏览网页的用户,对服务器是没有任何影响 的。但是,用户在线数量是统计并发用户数量的主要依据之一。
  二、计算公式
  1、最大在线用户数=WEB支持的最大连接数*session过期时间/http连接保持时间
  2、估算用户 = 测试用户 x (事务反应时间 + 实际用户操作延迟时间)/事务反应时间
  3、平均并发用户数:C = nL/T 
  C是平均并发用户数,n是login session的数量,L是login session的平均长度,T是考察时间的长度
  4、并发用户数峰值:C' = C +3根号C
  例:
  假设有一个OA系统,该系统有3000用户,平均每天有400用户访问该系统,对一个典型的用户来说,一天之内从用户登陆到退出的平均时间为4个小时,在一天内,用户只在8个小时内使用系统;则根据公式可得:
  C = 400*4/8   结果为加上thinktime的值    不加thinktime并发数为:C*20% (10%~20%)
  F = VU *R/T  其中F是吞吐量,VU表示虚拟用户数,R表示每个虚拟用户发出的请求数,T表示性能测试的时间。
  R = T/TS   TS为用户思考时间
  5、磁盘有两个重要的参数: Seek time和Rotational latency。正常的I/O计数为:①1000/(Seek time+Rotational latency)*0.75,在此范围内属正常。
  6、QPS:每秒查询率(Query Per Second) ,每秒的响应请求数,也即是最大吞吐能力。
  QPS = req/sec = 请求数/秒
  QPS统计方式 [一般使用 http_load 进行统计]
  QPS = 总请求数 / ( 进程总数 * 请求时间 )
  QPS: 单个进程每秒请求服务器的成功次数
  7、峰值QPS:原理:每天80%的访问集中在20%的时间里,这20%时间叫做峰值时间
  公式:( 总PV数 * 80% ) / ( 每天秒数 * 20% ) = 峰值时间每秒请求数(QPS)
  8、PV:访问量即Page View, 即页面浏览量或点击量,用户每次刷新即被计算一次
  单台服务器每天PV计算
  公式1:每天总PV = QPS * 3600 * 6
  公式2:每天总PV = QPS * 3600 * 8
  9、UV:独立访客即Unique Visitor,访问您网站的一台电脑客户端为一个访客。00:00-24:00内相同的客户端只被计算一次服务器数量:
  机器:峰值时间每秒QPS / 单台机器的QPS = 需要的机器
  机器:ceil( 每天总PV / 单台服务器每天总PV )