QPS与TPS是什么意思

发布时间 2023-04-10 14:13:53作者: 蜗小蜗

QPS :每秒查询率

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

因特网上,经常用每秒查询率来衡量域名系统服务器的机器的性能,即为QPS。对应fetches/sec,即每秒的响应请求数,也即是最大吞吐能力。每天80%的访问集中在20%的时间里,这20%时间叫做峰值时间。公式:(总PV数*80%)/(每天秒数*20%)=峰值时间每秒请求数(QPS)。机器:峰值时间每秒QPS/单台机器的QPS=需要的机器。

主要针对专门用于查询的服务器的性能指标,比如dns,它不包含复杂的业务逻辑处理,比如数据库中的每秒执行查询sql的次数。QPS 只是一个简单查询的统计显然,不能描述增删改等操作,显然它不够全面,所以不建议用 QPS 来描述系统整体的性能;

QPS 基本类似于 TPS,但是不同的是,对于一个事务访问,会形成一个 “ T ”;但一次 " T " 中,可能产生多次对服务器的请求,服务器对这些请求,就可计入 QPS 之中。

 

 

TPS:每秒事务数

Transactions Per Second,意思是每秒事务数。一个事务是指客户端向服务器发送请求然后服务器做出反应的过程。具体的事物定义,可以是一个接口,多个接口,一个业务流程等等。以单接口定义为事务举例,每个事务包括了如下3个过程:1.向服务器发请求 2.服务器自己的内部处理(包含应用服务器。数据服务器等) 3.服务器返回结果给客户端。

如果每秒能够完成N次以上3个过程,TPS就是N。

TPS(吞吐量):这个很好理解,简单来说就是在单位时间能处理的数量,我们都知道简单浏览器过程就是一个请求和响应的过程,一般来说,在我们无并发的情况下,吞吐量还是响应时间的倒计时。相反在我们的并发应用下我们这个就成为我们的机器的标准。

TPS 是软件测试结果的测量单位。我们在进行服务性能压测时,接口层面最常关注的是最大 TPS 以及接口响应时间,个人理解 TPS 可以指一组逻辑相关的请求,而服务整体处理能力取决于处理能力最低模块的TPS值。  

 

区别:

(1)如果是对一个查询接口压测,且这个接口内部不会再去请求其它接口,那么 TPS = QPS,否则,TPS ≠ QPS

(2)如果是容量场景,假设 N 个接口都是查询接口,且这个接口内部不会再去请求其它接口,QPS = N * TPS 

来源:https://blog.csdn.net/a745233700/article/details/117917333

 

并发:一段时间访问的大量用户的请求。并行:同一时刻的大量用户的请求。并发最能体现代码和机器的性能。