TPS计算方法,实用

​​​​在这里插入图片描述

前段时间,项目这边需要评估下几个主要功能点的性能指标,问题其实并不难,但是发现一个很有意思的问题,一些同事居然不太理解TPS到底是个什么概念,往往和QPS分不清……

在这里给大家重申一下,

QPS = Query Per Second / Request Per Second

每秒查询次数 / 每秒请求次数 ,一般用于系统中“读请求/读操作”的性能评估指标。

这里不提事务,因为只读查询一般我们不加事务或者只使用数据库的只读事务。
举例说明,我们浏览电商平台的产品详情页的时候,就是一次“读请求/读操作”。

TPS = Transaction Per Second

每秒交易次数 / 每秒事务处理次数 ,一般用于系统中“写请求/写操作”的性能评估指标。

举例说明,我们在电商平台下订单,系统成功处理后,就是一次“写请求/写操作”。

关于如何做性能指标的监控,市场上有一些免费开源的工具可用。

我这边建议大家能手动测就手动测,因为压测工具也存在机器性能上的损耗造成的误差。

测试方法就是通过手动来抓取以下的数据库指标,来计算单位时间内的系统调用数据库的执行次数。

基于MySQL数据库,发几个实用的指标供大家参考,有条件者请牢记:

com_commit = show global status like 'com_commit';
com_rollback = show global status like 'com_rollback';
com_select = show global status like 'com_select';
com_insert = show global status like 'com_insert';
com_delete = show global status like 'com_delete';
com_update = show global status like 'com_update';
uptime = show global status like 'uptime';

TPS=(com_commit + com_rollback + com_select + com_insert + com_delete + com_update)/uptime

一般,我们会根据业务需要,对不同功能点进行压测,一般来说,读请求看QPS,写请求看TPS

在我看来,准确的评估一个系统吞吐量,一般以TPS指标为准,但是,如果问一个系统支持多少并发,那么我们也可以用QPS指标来表达。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值