问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

3分钟理清QPS、TPS、RT 以及它们之间的关系

创作时间:
作者:
@小白创作中心

3分钟理清QPS、TPS、RT 以及它们之间的关系

引用
CSDN
1.
https://blog.csdn.net/u012702547/article/details/142821175

在评估系统性能时,QPS(每秒查询率)、TPS(每秒事务处理数)、RT(响应时间)等指标经常被提及。本文将通过简单易懂的语言,帮助读者理清这些概念及其相互关系。

一、QPS

QPS(Queries Per Second)是每秒的查询率,它表示一台服务每秒响应的查询次数。具体来说,QPS反映了系统在高并发环境下处理请求的能力。一个高QPS的系统能够在单位时间内处理更多的请求,从而提供更好的用户体验和更高的吞吐量。相反,QPS较低的系统可能在面对大量请求时会出现响应延迟或请求失败的情况。

举个栗子:
假设服务器1秒响应500次请求,那么此时QPS就是500。

二、TPS

TPS(Transactions Per Second)表示每秒事务处理的数量,一个事务表示客户端向服务器发送请求,然后响应的过程。

举个栗子
比如用户在京东上下单的时候,每当用户下单请求被服务器接受到之后,服务需要保存订单、扣减商品库存、确认支付等等这一系列的操作,所有过程都完成后,将结果响应给客户端。这个完整的过程就是一次事务,TPS则表示每秒内可以完成多少次这样的请求。

整体上来说,一个TPS包括了三个部分:

  1. 用户请求服务器
  2. 服务器自己的内部处理
  3. 服务器返回给用户

这样一个完整的过程就是一个TPS。

有的小伙伴分不清TPS和QPS,简单来说是这样:

  • 如果是对一个查询接口压测,且这个接口内部不会再去请求其它接口,那么TPS = QPS,否则,TPS ≠ QPS。
  • 如果是容量场景,假设N个接口都是查询接口,且这个接口内部不会再去请求其它接口,QPS = N * TPS。

第一点好理解,针对第二点我举一个简单的案例:假设请求一个页面,这就是一个TPS,这个页面中又发送了5次请求向服务器加载数据,那么
QPS=TPS*5

三、RT

RT(Response-time)响应时间,这个表示执行一个请求从开始到最后收到响应数据所花费的总时间,即从客户端发起请求到收到服务器响应结果的时间。

如果忽略网络传输时间,响应时间是处理时间和等待时间的总和,其中:

  • 处理时间是完成请求要求的工作所需的时间
  • 等待时间是请求在被处理之前必须在队列中等待的时间

RT是一个系统最重要的指标之一,它的数值大小直接反应了系统的快慢。

举个栗子
这里,RT = T2 - T1。

四、并发数

系统并发数是指在某一时刻,系统中能够同时处理的请求数量。这个指标通常用来衡量系统在高负载情况下的性能和处理能力。

五、几个概念之间的关系

除了前面第二小节和大家介绍的TPS和QPS之间的公式之外,再给小伙伴们两个公式:

  • RT = 并发数/QPS
  • QPS = 并发数/RT

好啦,几个常见的概念,小伙伴搞懂了吧~

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号