QPS
每秒查询率(QPS,Queries-per-second)
是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准。
TPS
每秒事务处理率(TPS,Transactions-Per-Second)
事务是一个请求到响应的完整过程,它是软件测试结果的测量单位
个人理解:
- 事务T在这里是广义的事务,自然指的不是数据库里面的事务概念,它指的是一个有效行为产生预期结果的一个完整过程
- 一个事务会包含多次查询,也就是一个T中会有多个Q
吞吐量
吞吐量是一个使用十分广泛的性能评价指标。
它的核心定义就是单位时间内系统成功处理的数据量大小。
“数据量”由具体的上下文环境确定,在操作系统里,它可以指CPU执行的指令数;对一个线上Web系统来说,它可以指请求数量。
而对一个线上的Web系统来说,吞吐量变小有三点原因:
- 请求数量本身很小
- 单个请求长时间大量地占用了系统资源(CPU、外部接口、IO设备)
- 同时请求数过多,CPU常处于上下文切换的无意义消耗中
系统吞吐量几个重要参数:QPS(TPS)、并发数、响应时间
并发数:系统在一规定的时间窗内(通常取单位时间)接受的请求数
响应时间:单位时间内处理的请求的平均响应时间
这三者存在如下关系:
QPS(TPS)= 并发数 / 平均响应时间
并发数 = QPS * 平均响应时间
计算公式里的平均响应时间与请求-响应的响应时间有一定区别,如果一个事务的时间长度为1min,那么在计算的时候平均响应时间应以1min来计算。