TPS
概念
TPS (transaction per second):意思是每秒事务数,具体事务的定义,都是人为的,可以一个接口、多个接口、一个业务流程等等。一个事务是指事务内第一个请求发送到接收到最后一个请求的响应的过程,以此来计算使用的时间和完成的事务个数。
公式
TPS=事务数/时间(秒)
例子
以单接口定义为事务为例,每个事务包括了如下3个过程:
- a.向服务器发请求
- b.服务器自己的内部处理(包含应用服务器、数据库服务器等)
- c.服务器返回结果给客户端
如果每秒能够完成N次这三个过程,TPS就是N;
---------------------------------------------------------------------------------------------------------------------------------------
QPS
概念
QPS(Queries Per Second):是每秒查询率,是一台服务器每秒能够响应的查询次数(数据库中的每秒执行查询sql的次数),显然,这个不够全面,不能描述增删改,所以,不建议用qps来作为系统性能指标;Query Per Second,是数据库中的概念,每秒执行条数(查询),被引伸到压测中来了,不包括插入、更新、删除操作;
公式
QPS=req/sec=请求数/秒 =总请求数 / ( 进程总数 * 请求时间 ) 单个进程每秒请求服务器的成功次数
---------------------------------------------------------------------------------------------------------------------------------------
QPS与TPS的区别
- QPS对数据库的查询操作,TPS是对页面访问的操作
- 请求归根揭底都是对数据库的增删改查,一个查询请求为一个QPS,多个请求形成一个闭环完成一个页面的访问叫做TPS
- 一个TPS包含多个QPS
---------------------------------------------------------------------------------------------------------------------------------------
吞吐量
概念
单位时间内客户端和服务器成功传递数据的数量,即系统在单位时间内处理请求的数量,TPS、QPS都是吞吐量的常用量化指标。一个系统的吞吐量多少(大小)通常由QPS(TPS)、并发数两大因素决定,每套系统这个两个值都有一个相对极限值,在应用场景访问压力下,只要某一项达到系统最高值,系统吞吐量就上不去了,如果压力继续增大,系统的吞吐量反而会下降,原因是系统超负荷工作,上下文切换,内存等等其他消耗导致系统性能下降
公式
- 从业务角度看,吞吐量可以用:请求数/秒、页面数/秒、人数/天或处理业务数/小时等单位来衡量
- 从网络角度看,吞吐量可以用:字节/秒来衡量(Jmeter中即是此意思)
- ??不同场景,??作用说明
- 对于交互式应用来说,吞吐量指标反映的是服务器承受的压力,他能够说明系统的负载能力
- 以不同方式表达的吞吐量可以说明不同层次的问题
- ??例子:
- 以字节数/秒方式可以表示数要受网络基础设施、服务器架构、应用服务器制约等方面的瓶颈;
- 以请求数/秒的方式表示主要是受应用服务器和应用代码的制约体现出的瓶颈。
当没有遇到性能瓶颈的时候,吞吐量与虚拟用户数之间存在一定的联系。可以采用以下公式计算:
吞吐量:F=VU * R /T 注解:F为吞吐量,VU表示虚拟用户个数,R表示每个虚拟用户发出的请求数,T表示性能测试所用的时间;业务角度
吞吐量:F=网络上传输的数据量(字节数为单位),吞吐率(RPS):RPS=F/T 注解:网络角度;吞吐量以字节定义时才有吞吐率这么一说;对请求数进行统计是出自业务角度,只有吞吐量
---------------------------------------------------------------------------------------------------------------------------------------
PV
概念:页面访问量,即页面浏览量或点击量,用户每次刷新即被计算一次;和QPS挂钩
日PV=QPS*60*60*24 注解:即QPS乘以一天的秒数
拓展:与 PV 相关的还有 RV,即重复访问者数量(repeat visitors)
---------------------------------------------------------------------------------------------------------------------------------------
并发数
由于并发数计算需要划分不同场景,单独出一篇随笔记录
---------------------------------------------------------------------------------------------------------------------------------------
??理解且熟记??了解
---------------------------------------------------------------------------------------------------------------------------------------
UV
UV(Unique Visitor):独立访客,统计1天内访问某站点的用户数。可以统计服务一天的访问日志并根据用户的唯一标识去重得到。
DAU
DAU(Daily Active User):日活跃用户数量。常用于反映网站、互联网应用或网络游戏的运营情况。DAU通常统计一日(统计日)之内,登录或使用了某个产品的用户数(去除重复登录的用户),与UV概念相似
MAU
MAU(Month Active User):月活跃用户数量,指网站、app等去重后的月活跃用户数量
GMV
GMV:是 Gross Merchandise Volume 的简称。只要是订单,不管消费者是否付款、卖家是否发货、是否退货,都可放进 GMV