tanwen321 发表于 2010-5-31 12:03:40

TPS讨论

原帖由 sunshinelius 于 2004-9-20 11:43 发表 http://bbs.51testing.com/images/common/back.gif
tps是什么

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忽悠了?

dennyqiang 发表于 2010-5-31 16:34:50

首先,需要明白事务是如何定义的。

事务可以从客户端角度进行定义。如一个登录的POST请求可定义为一个事务,一个文件上传下载的动作也可定义为一个事务,一组连续的请求操作也可定义一个事务。

事务也可从服务器端定义,如执行一个数据库事务,或一段存储过程,或一个服务器请求等。

所有性能测试工具均是用多线程的方式来模拟客户端,所以在性能测试工具中对事务的定义均从客户端角度来度量。

理解了事务,再理解TPS,TPS需要结合性能测试场景来说明:
1) 单体测试:如本次测试只测登录这一功能,便于分析和寻找瓶颈,也可做并发测试。此时TPS = 总事务数 / 总时间(秒)
2) 混合测试:多种模块一起进行测试,更符合真实场景,便于对服务器的整体处理能力进行评估,TPS = 单个事务的TPS总和。

由于事务是从客户端进行定义的,所以完全由性能测试人员决定事务的粒度。

qzj_test 发表于 2010-6-1 10:09:36

liyia 发表于 2010-7-20 11:02:47

每帖必看!
看帖必回!

zsjmm 发表于 2010-8-17 16:54:41

原帖由 dennyqiang 于 2010-5-31 16:34 发表 http://bbs.51testing.com/images/common/back.gif
首先,需要明白事务是如何定义的。

事务可以从客户端角度进行定义。如一个登录的POST请求可定义为一个事务,一个文件上传下载的动作也可定义为一个事务,一组连续的请求操作也可定义一个事务。

事务也可从服务 ...

受益!:)

shally09 发表于 2010-12-6 08:49:28

首先,需要明白事务是如何定义的。

事务可以从客户端角度进行定义。如一个登录的POST请求可定义为一个事 ...
dennyqiang 发表于 2010-5-31 16:34 http://bbs.51testing.com/images/common/back.gif

学习

mvvztt 发表于 2011-9-18 20:38:36

首先,需要明白事务是如何定义的。

事务可以从客户端角度进行定义。如一个登录的POST请求可定义为一个事 ...
dennyqiang 发表于 2010-5-31 16:34 http://bbs.51testing.com/images/common/back.gif


    这里总的时间是指整个场景运行的时间么?

mvvztt 发表于 2011-9-18 20:46:03

其实就是想知道LR中的TPS是怎么算出来的,我测试过一个登录的功能,事务平均响应时间只有零点零几秒,但是TPS只有1,很纳闷

yhp1314520 发表于 2012-8-6 10:37:24

Ejitec9:32:01
有人知道为什么disable harddisk cache后, TPS反而会升高的原因吗?

我的理解是在资源允许的情况下上线前压测TPS越高越好,在上线后所请求的TPS越低对服务器的压力越小;如果很低那就没有缓存的意义(缓存本身也会占用较多资源)
上线后针对磁盘的话禁用缓存肯定提高TPS,此时在达到一定量之后服务器压力也会随之上升;缓存开启会先读取缓存针对磁盘的TPS肯定会降低。另外我对TPS的理解为每秒成功处理事务数
在同等资源占用的情况下软硬件能处理的TPS越高意味着性能越好(有个前提条件为监测对比的事务为同一个事务),不晓得对不对?
页: 1 [2]
查看完整版本: tps是什么?(lr)