压测中的QPS与TPS区别

原文来自:https://www.cnblogs.com/fkkk/p/11957566.html

QPS(每秒查询率)=并发数/平均响应时间

原理:每天80%的访问集中在20%的时间里,这20%时间叫做峰值时间。

公式:(总PV数*80%)/(每天秒数*20%)=峰值时间每秒请求数>(QPS)

机器:峰值时间每秒QPS/单台机器的QPS=需要的机器

(计算出单个机器下接口的QPS,才能知道上线后,需要几台机器部署,而计算QPS我们可以通过jmeter等压测工具来实现

上面是QPS精准的理解,当然我们也可以简单的理解为:

QPS:每秒请求数,就是说服务器在一秒的时间内处理了多少请求。

TPS(每秒处理事务数)=请求数/时间(秒)

TPS的过程包括:客户端请求服务端、服务端内部处理、服务端返回客户端。也就是说一个事务是指一个客户机向服务器发送请求然后服务器做出回应的过程。

QPS与TPS不同之处:

1)对于一个页面的一次访问,会形成一个TPS;但一次页面请求,可能产生多次对服务器的请求,服务器对这些请求,就会计入QPS中。

2)如果是对一个接口(单场景)压测,且这个接口内部不会再去请求其他接口,那么TPS=QPS。

例如:访问一个index页面请求服务器3次,包括1次html,1次css,1次js,那么访问这一个页面就会产生1个TPS,产生3个QPS。

ps:jmeter中的吞吐量为平均吞吐量,失败的请求也算在吞吐量里(只要有返回的都算)。

原文地址:https://www.cnblogs.com/lv-lxz/p/15044326.html