1、TPS/TPM/QPS/PV
PV是指页面被浏览的次数,比如你打开一网页,那么这个网站的pv就算加了一次。
TPS是每秒内的事务数,比如执行了dml操作,那么相应的tps会增加。
TPM是每分钟的事务数。
QPS是指每秒内查询次数,比如执行了select操作,相应的qps会增加。
不同的应用系统TPS,QPS是没有可对比性的。
例如:
应用A,每个select查询需要1ms,一个connection的话,一直不停的执行,1S内 可执行1000次,也就是1000qps
应用B,每个select查询需要100ms, 一个connection的话,一直不停的执行,1S内 可执行10次,也就是10qps
上面不同系统的两个QPS是无法对比的,不能说哪个好哪个坏。
2、TPS的作用
例1:某单个接口,TPS=10,希望这接口每天能处理100万个请求,问能否满足?
每分钟处理60*10=600个请求
每小时处理600*60=36000个请求
每天处理24*36000=864000个请求
所以是不能满足需求的。
例2:希望某个接口每天能处理200万个请求,问TPS至少应该达到多少?
200*0000/24*3600=28
例3:钉钉打开系统,9:00上班,8:30-9:00期间打开,一般集中在30分钟。
公司500人,平均每个员工打卡1.6次(有人怕没打上会再打),算一下TPS多少能支撑目前的应用不挂?
tps=500*1.6/30*60=0.44
如果是10分钟以内打完卡
tps=500*1.6/10*60=1.3
如果是集中在最后一分钟
tps=500*1.6/1*60=13
假设现在一台服务器的TPS是7,那么至少需要2台服务器。
这两台服务器平时都很闲,只有上下班时才忙,该如何设计?(类似的还有新浪微博,流量激增时可能需要1000台,平时500台即可)
使用动态扩容,热点警告。
3、常用应用场景
TPS常常是有限制的,如CPU<80%,内存<60%时的TPS
CPU使用率和内存占用率往往是默认的或取经验值
容量测试:一般可设置运行1小时
压力测试:一般可设置10分钟
稳定测试:7*24小时、5*24小时
很不明确的需求:一般测试最大TPS
感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:
这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!有需要的小伙伴可以点击下方小卡片领取