在使用性能测试PTS(Performance Testing Service)之前,您需要了解PTS的相关名词术语。

术语

说明

3xx

表示客户端需要采取进一步的操作才能完成请求。通常这些状态码用来重定向,后续的请求地址(重定向目标)在本次响应的Location域中指明。

4xx

表示客户端发生了错误,妨碍了服务器的处理。

5xx

表示服务器无法完成明显有效的请求。一般代表了服务器在处理请求的过程中有错误或者异常状态发生,也有可能是服务器意识到以当前的软硬件资源无法完成对请求的处理。

串联链路

指一组压测API的有序集合(类似于事务),具有业务含义。压测API之间只有在同一个串联链路中才能进行入参和出参关联(运行时数据传递)。两个不同的串联链路之间相互独立,通常不会存在参数的传递依赖(使用数据导出指令的情况除外)。

前置串联链路

前置串联链路是一种特殊类型的串联链路,可用于执行预测试操作。它的行为完全像一个正常的串联链路。不同的是,它在所有一般的串联链路之前执行。如同JMeter压测中的Setup Thread Group。

前置串联链路一般用于数据的预先处理,例如导出登录Cookie。

后置串联链路

在压测结束时执行的串联链路,用于在常规串联链路执行完成后执行必要操作,功能类似于JMeter中的TearDown Thread Group。

重要

只有主动单击结束压测才会执行后置串联链路,如果压测自然结束将不会执行。

压测API

指由用户行为触发的一条端上请求。压测API是场景压测中的必需元素,用来定义串联链路中每个阶段URL的具体信息。例如,电商网站的登录、查询商品详情、提交订单等,分别对应一次用户行为中的多个请求API。

VU

虚拟并发数,表示压测能力。例如100 VU,即表示有100个独立的线程分别连续发送请求。

VUM

计量单位,VUM = VU * Min。

并发用户数

同时发送压测请求的用户数量。一个用户在压测过程中可能是一个进程或者一个线程。

并发模式

虚拟用户模式,如果想要摸底业务系统能同时承载的在线用户数,可以通过该模式。

压测场景

压测场景是若干个基于HTTP/HTTPS的URL/API的组合。URL/API可能关联了数据文件表示不同用户。不同的URL/API表示不同的业务含义(例如登录、加入购物车),最终组合成一个接近用户各种真实行为同时具备一定用户量级的压测模型。

出参

从一个压测API的应答中截取需要的内容作为出参,供后续的压测API作为参数使用。

检查点(断言)

一般用于标记业务成功与否,从而验证压测请求的响应是否符合预期。有时候响应码是200并不代表业务处理成功,有可能需要判断响应体内的内容。在PTS的串联链路中如果断言失败,当前请求就不会继续传递到下一个压测API。另外,在压测实时报表和压测报告中都会相应展现业务成功或者失败的信息。

集合点

使虚拟用户在集合点处等待,满足条件后一次性释放所有等待的用户,继续后续业务,例如整点秒杀场景。

条件跳转

根据出参,改变串联链路请求的执行路径,支持跳转、继续和结束等。

RPS模式

吞吐量模式,指每秒固定发出设置的请求数量(RPS)。

SLA

服务等级协议(Service-Level Agreement),是判定压测是否异常的重要依据。压测过程中,通过监控核心服务状态的SLA指标数据,您可以更直观地了解压测业务或架构的状态。

SLA指标

是指从哪些指标监控压测过程数据。目前,SLA指标主要包含业务质量相关指标RT (Response Time)、RPS (Requests per Second)和成功率。PTS将逐步增加性能(云监控基础数据)、队列、SQL连接等方面的SLA指标。

SLA规则

是在SLA指标的基础上,添加了判断条件,以触发告警或停止压测。

SLA模板

是SLA规则的集合,可包含一个或多个SLA规则。SLA模板与行业类型绑定。

思考时间

模拟用户在前后两个节点间思考、反应花费的时间,支持多种模式。

数据导出

PTS提供的指令之一。用于导出某个串联链路中的数据(如Cookie、出参或通过数据指令定义的参数),供其他串联链路使用,在全局共享导出数据。

数据指令

PTS提供的指令之一。通过对前置压测API的出参、字符串或函数做二次处理,定义新的参数,提供给串联链路中的后续压测API使用。

文件参数

将存在关联的参数放在一个文件的不同列中,通过上传该文件将其参数值导入PTS。这些参数称为文件参数,可在压测API中使用。

TPS

Transaction Per Second,系统每秒处理的事务数量。

响应时间RT

从客户端发送一个请求开始,到客户端接收到服务端返回的响应所经历的时间。响应时间由请求发送时间、网络传输时间和服务器处理时间三部分组成。

75%响应时间

在整个压测周期内(压测启动到停止的时间内),某个串联链路或者压测API的所有采样到的响应时间(固定采样周期)中75%的时间在这个值以内。

指令

是一种可以改变、控制串联链路中行为和流程的功能组件,可以更真实地模拟业务压测流量。

请求成功率

压测中此API的请求成功率。

Timing瀑布流

展示该请求在核心生命周期的耗时情况。

SLB监控

负载均衡SLB(Server Load Balancer),在SLB监控详情页,可查看整个压测过程中各SLB的端口新建连接数、端口丢弃连接数、端口流出带宽、端口流入带宽和QPS等数据。

ECS监控详情

云服务器ECS(Elastic Compute Service),在ECS监控详情页,可查看整个压测过程中各ECS的CPU使用率、内存利用率、各网卡网络流入速率、磁盘读写速度和Load5。

RDS监控详情

云数据库RDS(Relational Database Service),在RDS监控详情页可查看整个压测时间内各RDS的连接数使用率、CPU使用率、磁盘使用率、IOPS和内存使用率。

更多详情请参见测试指标