TPS及计算方法
TPS(transaction per second)代表每秒执行的事务数量,可基于测试周期内完成的事务数量计算得出。例如:用户没分钟执行6个事务,TPS为6/60=0.10TPS,同时我们会知道书屋的响应时间(或节拍),以此为例,60秒完成6个事务也同时代表每个事务的响应时间或节拍为60/6=10秒。
利特尔法则 (Little’s law):
示例1:节拍0秒,思考时间0秒
用户执行5个事务并且每个事务的响应时间是10秒,需要花费50秒完成5个事务,即5/50=0.1TPS(这里TPS是由响应时间控制)
示例2:速率15秒,思考时间0秒
用户执行5个事务且每个事务的响应时间是10秒,单实际节拍大于响应时间,所以它优于响应时间控制了事务发生的频率。完成5个事务需要5*15=75秒,产生5/75=0.06667TPS
在第二个示例中,平均响应时间小于节拍15秒,需要75秒完成5个迭代,产生了0.06667 TPS。
上面两个例子中我们假设思考时间为0秒。如果思考时间为2秒,总时间仍是75秒完成5个迭代,产生0.06667 TPS。
节拍为0秒,则 用户数 = TPS * ( 响应时间 + 思考时间 )
节拍不为0秒且大于响应时间与思考时间的和,则 用户数 = TPS * (速率)
事实上TPS是事务在w.r.t时间的速率,所以也被成为吞吐量(throughput)。
N=(R+Z)*X
N:用户数
R:平均响应时间(也可能是速率)
Z:思考时间
X:吞吐量
如:N (用户数)=1500, R (平均响应时间)=10, Z (思考时间)=0,则X (吞吐量)=1500/10=150 TPS
转载:https://www.cnblogs.com/insane-Mr-Li/p/10915160.html