TPS及计算方法

TPS (transaction per second)代表每秒执行的事务数量,可基于测试周期内完成的事务数量计算得出。例如,用户每分钟执行6个事务,TPS为6 / 60s = 0.10 TPS。同时我们会知道事务的响应时间(或节拍),以此例,60秒完成6个事务也同时代表每个事务的响应时间或节拍为10秒。

利特尔法则  (Little’s law):

该法则由麻省理工大学斯隆商学院(MIT Sloan School of Management)的教授John Little﹐于1961年所提出与证明。它是一个有关提前期与在制品关系的简单数学公式,这一法则为精益生产的改善方向指明了道路。

利特尔法则的公式描述为:Lead Time(产出时间)= 存货数量×生产节拍     或     TH(生产效率)= WIP(存货数量)/ CT(周期时间)

P.S: 稍后我们会列出负载模型中利特尔法则的应用公式。

我们通过2个示例来看一下此法则是如何在生产环境中发生作用的。

例1:假定我们所开发的并发服务器,并发的访问速率是:1000客户/分钟,每个客户在该服务器上将花费平均0.5分钟,根据little‘s law规则,在任何时刻,服务器将承担1000×0.5=500个客户量的业务处理。假定过了一段时间,由于客户群的增大,并发的访问速率提升为2000客户/分钟。在这样的情况下,我们该如何改进我们系统的性能? 根据little‘s law规则,有两种方案:

第一:提高服务器并发处理的业务量,即提高到2000×0.5=1000。 或者

第二:减少服务器平均处理客户请求的时间,即减少到:2000×0.25=500。

例2:假设你排队参观某个风景点,该风景点固定的容纳人数是:60人。每个人在该风景点停留的平均时间是:3分钟。假设在你的前面还排有20个人,问:你估计你大概等多少时间才能进入该风景点。

答案:1小时(3×20=60),和该景点固定的容纳人数无关。

为了通过利特尔法则研究负载模型,我们就先要了解两个因子:响应时间(Response time)和节拍(Pacing)。实际上节拍会超越响应时间对TPS的影响。

示例1:节拍0秒,思考时间0秒

用户执行5个事务并且每个事务的响应时间是10秒,需要花费50秒完成5个事务,即5/50=0.1 TPS (这里TPS是由响应时间控制)。

示例2:速率15秒,思考时间0秒

用户执行5个事务且每个事务的响应时间是10秒,但实际由于节拍大于响应时间,所以它优于响应时间控制了事务发生的频率。完成5个事务需要5*15 = 75秒,产生5/75=0.06667 TPS。

在第二个示例中,平均响应时间小于节拍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, 吞吐量(如TPS)

如:N (用户数)=1500, R (平均响应时间)=10, Z (思考时间)=0,则X (吞吐量)=1500/10=150 TPS

时间: 2024-11-05 12:10:40

TPS及计算方法的相关文章

mysql QPS(每秒查询量)、 TPS(每秒事务量)计算方法

Information from web QPS (Query per second) (每秒查询量) TPS(Transaction per second) (每秒事务量,如果是InnoDB会显示,没有InnoDB就不会显示) 计算方法 ___________________________________________________________ QPS Questions = SHOW GLOBAL STATUS LIKE 'Questions'; Uptime = SHOW GLO

TPS和事务响应时间的关系

例子:一个高速路有10个入口,每个入口每秒钟只能进1辆车 1.请问1秒钟最多能进几辆车? TPS=10 2.每辆车需要多长时间进行响应? reponse time = 1 3.改成20辆车,每秒能进几辆?每辆车的响应时间是多长? TPS = 10,reponse time = 1 4.入口扩展到20个,每秒能进几辆?每辆车的响应时间是多长? TPS = 20,reponse time = 1 5.看看,现在TPS变了,响应时间没变,TPS和响应时间有关系吗? 木有关系 6.如何理解? TPS和响

TPS、并发用户数、吞吐量关系

TPS.并发用户数.吞吐量关系 摘要 主要描述了在性能测试中,关于TPS.并发用户数.吞吐量之间的关系和一些计算方法. loadrunner TPS 目录[-] 一.系统吞度量要素: 二.系统吞吐量评估: 软件性能测试的基本概念和计算公式 一.软件性能的关注点 二.软件性能的几个主要术语 1.响应时间:对请求作出响应所需要的时间 2.并发用户数的计算公式 3.吞吐量的计算公式 4.性能计数器 5.思考时间的计算公式 PS:下面是性能测试的主要概念和计算公式,记录下: 一.系统吞度量要素: 一个系

关于MySQL的TPS和QPS

TPS - Transactions Per Second(每秒传输的事物处理个数),这是指服务器每秒处理的事务数,支持事务的存储引擎如InnoDB等特有的一个性能指标. 计算方法: TPS = (COM_COMMIT + COM_ROLLBACK)/UPTIME use information_schema; select VARIABLE_VALUE into @num_com from GLOBAL_STATUS where VARIABLE_NAME ='COM_COMMIT'; sel

【MySQL】计算 TPS,QPS 的方式

在做db基准测试的时候,qps,tps 是衡量数据库性能的关键指标.本文比较了网上的两种计算方式.先来了解一下相关概念. 概念介绍: QPS:Queries Per Second         查询量/秒,是一台服务器每秒能够相应的查询次数,是对一个特定的查询服务器在规定时间内所处理查询量多少的衡量标准. TPS :  Transactions Per Second   是事务数/秒,是一台数据库服务器在单位时间内处理的事务的个数. 如何计算: 从网上查看如果获取mysql 的qps,tps

Mysql 监控性能状态 QPS/TPS【转】

QPS(Query per second) 每秒查询量 TPS(Transaction per second)每秒事务量 这是Mysql的两个重要性能指标,需要经常查看,和Mysql基准测试的结果对比,如果值过高,就要尽快处理了 计算方法 01 QPS QPS = Queries / Seconds Queries 是系统状态值--总查询次数,可以通过 show status 查询得出 Seconds 是监控的时间区间,单位为秒 例如采样10秒内的查询次数,那么先查询一次Queries值(Q1)

QPS/TPS简介

系统吞度量要素 一个系统的吞度量(承压能力)与request对CPU的消耗.外部接口.IO等等紧密关联.单个reqeust 对CPU消耗越高,外部系统接口.IO影响速度越慢,系统吞吐能力越低,反之越高.系统吞吐量几个重要参数:QPS(TPS).并发数.响应时间QPS(TPS):每秒钟request/事务 数量并发数: 系统同时处理的request/事务数响应时间: 一般取平均响应时间QPS(TPS)= 并发数/平均响应时间 一个系统吞吐量通常由QPS(TPS).并发数两个因素决定,每套系统这两个

性能测试需求分析 业务PV量,响应时间、QPS、TPS

一. 性能测试需求分析 1.1      性能测试需求内容 性能测试需求应包括以下内容: a)    测试场景及用例,用例访问URL: b)   目标接口方法的入参.出参: c)    外部依赖的服务细节: d)  关键数据: 数据量.高峰业务PV量 e)  预期性能指标:响应时间.QPS.TPS等 性能测试需求模板表格参考如下: 性能测试(1) ---性能测试需求收集 1.2 预期性能指标1.2.1数据量测试环境的数据量,应该跟线上环境保持一致,至少要在一个数量级. 举例有,中文站线上的每秒登

服务端性能测试 TPS

针对服务器端的性能,以TPS为主来衡量系统的性能,并发用户数为辅来衡量系统的性能,如果必须要用并发用户数来衡量的话,需要一个前提,那就是交易在多长时间内完成,因为在系统负载不高的情况下,将思考时间(思考时间的值等于交易响应时间)加到脚本中,并发用户数基本可以增加一倍,因此用并发用户数来衡量系统的性能没太大的意义. 系统的性能由TPS决定,跟并发用户数没有多大关系.在同样的TPS下,可以由不同的用户数去压(通过加思考时间设置).系统的最大TPS是一定的(在一个范围内),但并发用户数不一定,可以调整