数据库服务器---Qps

时间:2023-06-18 11:47:26

  QPS(Query Per Second)意思为“每秒查询率”,是一台服务器每秒能够相应的查询次数,是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准。同时也代表一种计算机编程语言,用于数据分析和表报产出。

计算方法

QPS统计方式 [一般使用 http_load 进行统计]

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

每秒查询率QPS是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准,在因特网上,作为域名系统服务器的机器的性能经常用每秒查询率来衡量。对应fetches/sec,即每秒的响应请求数,也即是最大吞吐能力。[1]

决定因素

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

决定系统响应时间要素

我们做项目要排计划,可以多人同时并发做多项任务,也可以一个人或者多个人串行工作,始终会有一条关键路径,这条路径就是项目的工期。

系统一次调用的响应时间跟项目计划一样,也有一条关键路径,这个关键路径是就是系统影响时间;

关键路径是有CPU运算、IO、外部系统响应等等组成。

主要用途

  1. 测试网站每秒所能承受的平均访问量(吞吐量,单位时间内的事物处理能力)
  2. 测试网站是否能承受住预期的访问压力(大量用户并发访问,持续一段时间)

应用实例

1、测试网站每秒所能承受的平均访问量(吞吐量,单位时间内的事物处理能力)

http_load -parallel 5 -fetches 1000 urls.txt

这段命令行是同时使用5个进程,随机访问urls.txt中的网址列表,总共访问1000次。运行之后的结果:

1000 fetches, 5 max parallel, 6e+06 bytes, in 58.1026 seconds

6000 mean bytes/connection

17.2109 fetches/sec, 103266 bytes/sec(吞吐量)

msecs/connect: 0.403263mean, 68.603 max, 0.194 min(响应时间)

msecs/first-response: 284.133 mean, 5410.13 max, 55.735 min

HTTP response codes:

code 200 — 1000

从上面的运行结果来看,目标网站仅仅能够承受每秒17次访问,不够强壮。

2、测试网站是否能承受住预期的访问压力(大量用户并发访问,持续一段时间)

http_load -rate 2 -seconds 300 urls.txt

在300秒内保持一定的频率访问目标url。

注:不要测试上线之后的网站,有可能被压垮[3]

2 编程语言

一种计算机编程语言。用于数据分析和表报产出。运作的平台是MRDCL。

支持的数据文件包括ASC格式和CSI格式。其中CSI格式为QPS独有数据格式。

是极其专业的用于数据分析、数据清理和报表产出的语言,目前应用最广的是市场调研行业。中国国内运用的相对比较少。

3 每秒查询率编辑

QPS每秒查询率(Query Per Second)

每秒查询率QPS是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准,在因特网上,作为域名系统服务器的机器的性能经常用每秒查询率来衡量。

对应fetches/sec,即每秒的响应请求数,也即是最大吞吐能力。

扩展阅读:

2.

QPS