TPS讨论
原帖由 sunshinelius 于 2004-9-20 11:43 发表 http://bbs.51testing.com/images/common/back.giftps是什么
TPS 是Transactions Per Second 的 缩 写, 也 就 是 事 务 数/ 秒。 它 是软件测试结 果 的 测 量 单 位。 一 个 事 务 是 指 一 个 客 户 机 向 服 务 器 发 送 请 求 然 后 服 务 器 做 出 反 应 的 ...
按照这个说法,是不是应该这样理解,比如我定义了一个事务(test),而在场景中事务的平均响应时间是5S,那是不是test事务的TPS就是0.2呢?
或者是这样,我定义场景运行呢15分钟,而15分钟里事务test运行了100次,则test事务的TPS是100/(15*60)=0.11
但根据TPS结果,这2种算法显然都是不正确的。
根据定义大家都好像明白TPS指的是事务率,可有人知道这个到底是怎么计算出来的吗?难道我们都被LOADRUNNER忽悠了? 首先,需要明白事务是如何定义的。
事务可以从客户端角度进行定义。如一个登录的POST请求可定义为一个事务,一个文件上传下载的动作也可定义为一个事务,一组连续的请求操作也可定义一个事务。
事务也可从服务器端定义,如执行一个数据库事务,或一段存储过程,或一个服务器请求等。
所有性能测试工具均是用多线程的方式来模拟客户端,所以在性能测试工具中对事务的定义均从客户端角度来度量。
理解了事务,再理解TPS,TPS需要结合性能测试场景来说明:
1) 单体测试:如本次测试只测登录这一功能,便于分析和寻找瓶颈,也可做并发测试。此时TPS = 总事务数 / 总时间(秒)
2) 混合测试:多种模块一起进行测试,更符合真实场景,便于对服务器的整体处理能力进行评估,TPS = 单个事务的TPS总和。
由于事务是从客户端进行定义的,所以完全由性能测试人员决定事务的粒度。 哦 每帖必看!
看帖必回! 原帖由 dennyqiang 于 2010-5-31 16:34 发表 http://bbs.51testing.com/images/common/back.gif
首先,需要明白事务是如何定义的。
事务可以从客户端角度进行定义。如一个登录的POST请求可定义为一个事务,一个文件上传下载的动作也可定义为一个事务,一组连续的请求操作也可定义一个事务。
事务也可从服务 ...
受益!:) 首先,需要明白事务是如何定义的。
事务可以从客户端角度进行定义。如一个登录的POST请求可定义为一个事 ...
dennyqiang 发表于 2010-5-31 16:34 http://bbs.51testing.com/images/common/back.gif
学习 首先,需要明白事务是如何定义的。
事务可以从客户端角度进行定义。如一个登录的POST请求可定义为一个事 ...
dennyqiang 发表于 2010-5-31 16:34 http://bbs.51testing.com/images/common/back.gif
这里总的时间是指整个场景运行的时间么? 其实就是想知道LR中的TPS是怎么算出来的,我测试过一个登录的功能,事务平均响应时间只有零点零几秒,但是TPS只有1,很纳闷 Ejitec9:32:01
有人知道为什么disable harddisk cache后, TPS反而会升高的原因吗?
我的理解是在资源允许的情况下上线前压测TPS越高越好,在上线后所请求的TPS越低对服务器的压力越小;如果很低那就没有缓存的意义(缓存本身也会占用较多资源)
上线后针对磁盘的话禁用缓存肯定提高TPS,此时在达到一定量之后服务器压力也会随之上升;缓存开启会先读取缓存针对磁盘的TPS肯定会降低。另外我对TPS的理解为每秒成功处理事务数
在同等资源占用的情况下软硬件能处理的TPS越高意味着性能越好(有个前提条件为监测对比的事务为同一个事务),不晓得对不对?
页:
1
[2]