QPS:

  • 每秒查询率(Query Per Second),每秒的响应请求数,也即是最大吞吐能力。

  • QPS = rep/sec = 请求数/秒

  • QPS 统计方式【一般使用http_load进行统计

  • QPS = 总请求数 / (进程总数 *请求时间)

  • QPS: 单个进程每秒请求服务器的成功次数

峰值 QPS:

  • 每天 80% 的访问集中在 20% 的时间里,这 20% 的时间叫做峰值时间
  • 公式: (总 pv 数 * 80%)/ (每天秒数 * 20%) = 峰值时间每秒请求数据(QPS)

PV:

  • 访问量即 Page View,即页面浏览量或点击量,用户每次刷新即被计算一次单台服务器每天 PV 计算

  • 公式1(峰值):

  • 每天总 PV = QPS * 3600 * 6

  • 公式2(normal):

  • 每天总 PV = QPS * 3600 * 8

UV:

  • 独立访客即 Unique Visitor,访问您网站的电脑哭护短为一个访客,00:00-24:00 内相同的客户端只被计算一次服务器数量

  • 机器:

  • 峰值时间每秒 QPS / 单台机器的 QPS = 需要的机器

  • 机器:

  • ceil (每天总 PV / 单台服务器每天总 PV)

  • 并发数:并发数=QPS * 平均响应时间

  • 并发用户数是指系统可以同时承载的这正常使用系统功能的要用户的数量

  • 吞吐量:

  • 吞吐量是指系统在单位时间内处理的请求的数量

响应时间(RT)

  • 响应时间是指系统对请求作出的响应的时间

  • 例子:

  • 每天 300w PV 的在单台机器上,这太机器需要多少 QPS?

  • 答:(3000000 * 0.8) / (86400 * 0.2)= 139(qps)

  • 如果一台机器的QPS 是 58 ,需要几台机器?

  • 139/58 = 3

计算公式(例子)

系统吞吐量几个重要参数:QPS(TPS)、并发数、响应时间

QPS(TPS):每秒钟request/事务 数量

并发数:系统同时处理的request/事务数

响应时间: 一般取平均响应时间

理解了上面三个要素的意义之后,就能推算出它们之间的关系:

QPS(TPS)= 并发数/平均响应时间 或者 并发数 = QPS*平均响应时间

例:一个典型的上班签到系统,早上8点上班,7点半到8点的30分钟的时间里用户会登录签到系统进行签到。公司员工为1000人,平均每个员上登录签到系统的时长为5分钟。可以用下面的方法计算。

QPS = 1000/(30*60) 事务/秒

平均响应时间为 = 5*60 秒

并发数= QPS*平均响应时间 = 1000/(30*60) *(5*60)=166.7

一个系统吞吐量通常由QPS(TPS)、并发数两个因素决定,每套系统这两个值都有一个相对极限值,在应用场景访问压力下,只要某一项达 到系统最高值,系统的吞吐量就上不去了,如果压力继续增大,系统的吞吐量反而会下降,原因是系统超负荷工作,上下文切换、内存等等其它消耗导致系统性能下 降。