全部产品
弹性计算 会员服务 网络 安全 移动云 数加·大数据分析及展现 数加·大数据应用 管理与监控 云通信 阿里云办公 培训与认证 智能硬件
存储与CDN 数据库 域名与网站(万网) 应用服务 数加·人工智能 数加·大数据基础服务 互联网中间件 视频服务 开发者工具 解决方案 物联网 更多
性能测试 PTS

【场景1.0】指令介绍

更新时间:2018-06-15 10:50:10

该文案仅适用于场景1.0(老版本)。

场景1.0

一般情况下,完全由链路组成的场景,就可以完成一次压测。但是在更多场景下需要更加贴合业务逻辑、更加真实地模拟用户行为,PTS 铂金版的指令可以来完成这些功能。本文将介绍 PTS 铂金版指令的用法以及注意事项。

指令是一种可以改变、控制链路执行的行为和流程的功能组件。指令可以穿插在串联链路的各个位置,一般来说只会对单个串联链路起作用,某些特殊的指令也会对多个串联链路同时起作用。

思考时间

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

使用限制:无

固定时间模式

经过的请求固定等待 N 秒之后继续,其中 N 为输入的停顿时长,单位为秒。

0018

均匀分布

经过的请求固定等待 N 秒之后继续,其中 N=[延时基准,延时基准+可变跨度] 区间内的任意随机值。例如延迟基准=3,可变的跨度=2,那么延时时间范围=[3,5],请求会随机等待 3、4、5秒。

0019

正态分布

经过的请求固定等待 N 秒之后继续,其中 N 满足正态分布,即高斯分布。其中均值(μ)表示分布的中心值,方差表示距离均值的分布密度。方差越小密度越高、越集中;方差越大密度越低,越分散。

0020

如下图均值(μ)和标准差的设定:

0021

集合点

功能:使虚拟用户在集合点处等待,满足条件后一次性释放所有等待的用户,继续后续业务,例如整点秒杀场景。支持两种工作模式。

使用限制:使用上没有限制。但是需要注意,虽然集合点一次性释放所有用户,但是释放的速率仍然受后续节点的并发或者 TPS 限制。

根据时间集合

从压测启动开始计时,堆积用户请求,直到等待时间结束,一次性释放所有等待的用户。等待时间单位为秒,例如等待时间=600,那么集合点在 10 分钟之后释放。集合点只能生效一次。

0022

根据用户量集合

持续堆积用户等待,直到积压的用户数超过用户量时,一次性释放所有等待的用户,并且只生效一次。即指令的上一个链路完成的请求数的累加。

0023

条件跳转

功能:根据链路的出参判断改变串联链路请求的执行路径,支持跳转继续结束等。条件跳转支持多个叠加条件(且的关系),按照顺序从前到后依次匹配。如果都没有匹配到,则执行默认 Action。您也可以在一个跳转条件的基础上继续增加条件跳转(条件跳转之间是“或”的关系)。

  • 跳转:跳转到所在串联链路之前的其他链路;
  • 继续:继续执行下一个节点,如果没有下一个节点则结束;
  • 结束:中止当前用户执行流程。

使用限制:不能位于串联链路的第一个链路。条件判断只对当前用户的当前请求有效,每个请求之间互不影响。

条件跳转

并发用户限制

功能:从指令当前位置开始,限制该串联链路在此位置之后的所有用户总并发数。

使用限制:无

0025

如下图所示,链路 A 之后增加了并发用户限制为 10000,那么链路 B、思考时间和链路 C 使用的总并发数将会被控制在 10000 以内。

0026

功能:完成登录,多个串联链路共享登录信息,适用于通过 cookie 存储用户的场景。该指令适用于跨串联链路登录场景。

使用限制

  • 这三个指令必须同时使用,全局准备(按量模式)和 cookie 导出在同一个场景中只能出现一次;
  • 必须按照:① cookie 集导出、全局准备(按量模式),② 全局准备(等待完成模式)、cookie 集读取,两种固定形式配套使用。
  • 全局准备(等待完成模式)、cookie 集读取 配套使用, 只能位于串联链路的最前面。

操作步骤:

  1. 配置登录串联链路

    同一个场景,需要存储登录 cookie 的串联链路只允许有一个。在登录链路之后同时使用 cookie 集导出全局准备(按量模式)两个指令。全局准备(按量模式),需要填写需要释放准备完成的准备量级。如下例所示,如果填写 10000,则表示当有 10000 个用户登录完成之后,释放其他等待准备完成的指令。

    0027

    登录串联链路示例如下:

    0028

  2. 配置业务串联链路

    需要使用登录 cookie 的串联链路,在释放全局准备之前,都需要处于等待状态。全局准备(等待完成模式)、cookie 集读取 两个指令必须配套使用,并且全局准备需要选择 等待准备完成

    0029

    业务串联链路示例如下:

    0030

本文导读目录