1、性能压测--常用指标
1)并发用户数
指同一时间点对系统进行操作的用户数。准确说为"同时向服务器发送服务请求,给服务器产生压力的用户数量"
并发用户数和注册用户数、在线用户数的概念不同:
注册用户数一般指的是数据库中存在的用户数,在线用户数只是 ”挂” 在系统上,不一定对服务器不产生压力,而并发用户数一定会对服务器产生压力的。
2)每秒事务数(TPS)/每秒查询率(QPS)
TPS(Transactions Per Second):每秒事务事,单位时间内处理的事务数量,它表示系统的处理能力,这个值越大,说明处理能力越强。
事务是一个或者多个操作的集合,可以一个接口、多个接口、一个业务、多个业务等等。
QPS(Queries Per Second):每秒查询率,是一台服务器每秒能够响应的查询次数(数据库中的每秒执行查询sql的次数)
区别: TPS:Transactions Per Second,意思是每秒事务数,一个事务可以包含一个操作,也可以包含多个操作。具体事务的定义,可以一个接口、多个接口、一个业务或者多个业务(业务流程)等等。
QPS:Queries Per Second,意思是每秒查询率,是一台服务器每秒能够响应的查询次数(数据库中的每秒执行查询sql的次数),显然,这个不够全面,不能描述增删改,所以,不建议用qps来作为系统性能指标。
关系: 如果是对一个查询接口(单场景)压测,且这个接口内部不会再去请求其它接口,那么tps=qps,否则,tps≠qps
如果是容量场景,假设n个接口都是查询接口,且这个接口内部不会再去请求其它接口,qps=n*tps
建议: QPS是Query Per Second,是数据库中的概念,每秒执行条数(查询),被引申到压测中来了,但是不包括插入、更新、删除操作,所以不建议用qps来描述系统整体的性能;
3)响应时间(RT)
指客户端发起服务请求到服务器处理完服务请求并返回结果给客户端的时间。
另: 吞吐量(Throughput)含义
指的是单位时间内处理的客户端请求数量。
从业务角度来看,吞吐量指每秒事务数。单位:“Requests/Second” 从网络角度来看,吞吐量指每秒字节数,用来衡量网络的流量。单位:“Bytes/Second”