QPS和TPS的区别、负载和压力测试的区别

上一篇 / 下一篇  2020-09-09 16:59:59

作为软件测试工程师,你应该要分清楚QPS和TPS的区别。

  QPS/TPS

  QPS(Queries Per Second):每秒查询率,是一台服务器每秒能够响应的查询次数,是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准。

  TPS(TransactionsPerSecond):每秒事务数。它是软件测试结果的测量单位。一个事务是指一个客户机向服务器发送请求然后服务器做出反应的过程。客户机在发送请求时开始计时,收到服务器响应后结束计时,以此来计算使用的时间和完成的事务个数。

  TPS即每秒处理事务数,包括以下三个过程:

  用户请求服务器

  服务器自己的内部处理

  服务器返回给用户

  每秒能够完成N个这三个过程,TPS也就是N;

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

  比如:访问一个页面会请求服务器3次,一次访问,产生一个“T”,产生3个“Q”

  系统吞吐量

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

  一个系统的吞吐量(承压能力)与request对CPU的消耗、外部接口、IO等紧密关联。单个reqeust 对CPU消耗越高,外部系统接口、IO影响速度越慢,系统吞吐能力越低,反之越高。

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

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

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

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

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

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

  或者,并发数 = QPS*平均响应时间

  原文链接TPS、QPS和系统吞吐量的区别和理解

  负载测试和压力测试的区别

  负载测试(Load Test):负载测试是一种性能测试,指数据在超负荷环境中运行,程序是否能够承担。

  压力测试(Stress Test): 压力测试(又叫强度测试)也是一种性能测试,它是指在系统资源特别低的情况下软件系统运行情况,目的是找到系统在哪里失效以及如何失效的地方。

  压力测试stress test:在一定的『负荷条件』下,长时间连续运行系统给系统性能造成的影响。

  负载测试Load test:在一定的『工作负荷』下,给系统造成的负荷及系统响应的时间。

  通俗理解

  压力测试就是给服务器外部压力,比如长时间不让服务器休息,看看服务器是否会无法及时响应请求或者宕机;

  负载测试就是在单位时间内逐步加大对服务器的工作量,看看此服务器在不同的工作量下完成服务的速度和质量,从而了解到该服务器的工作能力。

  压力测试和负载测试能够帮助我们了解到一个服务器的抗压能力和工作能力,当然也能帮我们评估一个系统或软件的性能瓶颈与质量。


TAG:

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

Open Toolbar