解决最后一公里-PTS铂金版发布数据工厂

简介: 近期,PTS铂金版发布了压测API层面的数据工厂功能,用户不再需要自行构造完整的请求体或者请求头并叠加成所有的请求数据,而是基于单个例子,选中进行参数格式化即可,PTS给用户提供了大量可扩展的函数,函数也可以嵌套使用,同时用户依旧可以上传自己的数据文件,结合PTS提供的函数功能进行数据的构造生成。

PTS(Performance Testing Service)是web化、卓越的SaaS性能测试平台,具备强大的分布式压测能力,可模拟海量用户的真实业务场景。PTS铂金版的压力发起来源是遍布全国上百个城市和各运营商的CDN节点,相比业界产品启动更快速,来源更广泛,脉冲能力和流量掌控能力更强。PTS铂金版在功能上有强大的可视化编排能力,天然支持参数的传递,有一系列的可扩展指令,用于登陆态的共享、思考时间的模拟、流量集合的构造等等。

近期,PTS铂金版发布了压测API层面的数据工厂功能,用户不再需要自行构造完整的请求体或者请求头并叠加成所有的请求数据,而是基于单个例子,选中进行参数格式化即可,PTS给用户提供了大量可扩展的函数,函数也可以嵌套使用,同时用户依旧可以上传自己的数据文件,结合PTS提供的函数功能进行数据的构造生成。

压测API是目前链路的一个升级,主要是结合了数据工厂的能力,同时名称上也更便于理解。API是一条由用户行为触发的端上请求,以电商中登陆、查询商品详情、提交订单等为例,分别对应用户一次行为中的多个请求API。API是一次场景压测中必不可少的元素,用来定义一个串联链路中每个阶段URL的具体信息。压测API包括以下信息元素:

基本配置:包括API名称、协议类型、超时时间和 请求类型 等基础配置:

API名称:标识该API表示的含义,如获取商品列表数据,要求少于 50 个字;

协议类型:目前支持 HTTP 和 HTTPS;

超时时间:请求发送出去之后该虚拟用户等待应答响应的最长时间,单位为毫秒,默认值 5000,即 5 秒;

请求类型:HTTP 请求的 method,可以选择 POST 或者 GET;

API入参定义(非必填):支持上传文件和占位符两种定义,前者支持csv文件上传一些必要的数据集,比如username和passwd,后者用于在串联链路中与前面的出参关联达到参数传递的目的;

压测URL定义:发送请求的 URL 地址,比如 http:// 域名/路径。也可以包含参数的部分,如 http:// 域名/路径?key1=value1&key2=value2 ,选中value的部分可点击进行参数格式化设置,可将入参(有的话)、系统提供函数进行搭配生成想要的数据。

Body定义(非必填):如果请求类型为POST,可在Body中选中某些value的部分进行参数格式化定义,同上;

Header定义(非必填):定义每条压测请求中的Header信息,可以手工输入也可以进行参数格式化设置;

API出参(断言)定义(非必填):定义出参(可作为链路后续的入参)及断言(业务成功与否)条件,出参支持的形式有Body:JSON、Body:TEXT、Header:K/V 和 Cookie:K/V;

上述配置信息中,“基础配置”及“压测URL定义”是每个API的必填项,其他4项作为满足不同API的选择项。

那么,有了数据工厂之后的一次压测API的配置过程是怎样的,下面进行下简要介绍。登录 PTS 控制台,在控制台左侧菜单栏选择压测API,进入API列表页。单击页面右上角新增压测API按钮,进入新增链路页面。 输入API名称,选择协议及请求类型,确定超时时间:

部分时候,只需要对简单的批量读请求(比如打开 http://www.taobao.com )做压测,仅使用相同的URL做批量请求即可,那么直接在URL定义中填写需要压测的URL即可,POST请求的body部分同理;如果是不同请求参数不同的情况下,可以通过入参定义及参数格式化来实现。

入参定义可以通过上传参数文件及占位符的方式,来定义入参变量。前者是用于上传一些必要的数据,比如请求中需要的用户名、ID等,而后者(占位符)主要是用于占位,然后在场景中设置和其他API的出参关联,实现参数传递的功能。关于文件上传,文件格式必须为csv,且大小不超过60MB。文件中每列代表不同的参数属性,每行为一个请求中多个参数的组合,每格只需填写value即可,也可以只有一列,如果请求中某些参数需要强关联则构造在一个csv文件中并上传,相应的两个入参变量都定义起来。而文件上传之后会自动读取里面的列并展示在下方的入参定义中,您只需要定义入参的变量名即可,不需要的再删除。占位符的入参需要手工增加和定义。

为了适应更多复杂参数场景,参数的格式化可以通过字符串、入参变量、系统函数来组合,还可以继续做一些加工,如MD5、时间戳等。URL/BODY/Header的参数格式化类似,用鼠标选中需要替换的参数value,点击“点击进行参数化”,在弹窗中填写相应信息即可。

这样以来构造不同请求参数的大量的压测API变得非常简单易上手,赶快购买一个铂金版资源包用起来。当然,后续还会继续提升压测流量的构造能力,一大波新功能和新交互即将陆续推出,敬请期待。

相关文章
|
SQL 关系型数据库 数据库
大量使用临时表带来的问题,替代方案,以及如何擦屁股
以前有使用Greenplum的朋友遇到元表膨胀的问题,总结了原因写了一篇文章如下。建议先阅读这篇文档,再阅读本文,里面有些原理我在本文就不讲了。http://blog.163.com/digoal@126/blog/static/1638770402014616113353555 近日,又有使用P
7179 0
|
安全 Java Nacos
nacos常见问题之反序列化漏洞如何解决
Nacos是阿里云开源的服务发现和配置管理平台,用于构建动态微服务应用架构;本汇总针对Nacos在实际应用中用户常遇到的问题进行了归纳和解答,旨在帮助开发者和运维人员高效解决使用Nacos时的各类疑难杂症。
1183 1
|
存储 消息中间件 RocketMQ
DLedger —基于 raft 协议的 commitlog 存储库
尊敬的阿里云用户: 您好!为方便您试用开源 RocketMQ 客户端访问阿里云MQ,我们申请了专门的优惠券,优惠券可以直接抵扣金额。请填写下您公司账号信息,点击上图,了解更多哦。 一、DLedger引入目的 在 RocketMQ 4.5 版本之前,RocketMQ 只有 Master/Slave 一种部署方式,一组 broker 中有一个 Master ,有零到多个 Slave,Slave 通过同步复制或异步复制的方式去同步 Master 数据。
13659 125
|
存储
触发器基础知识(上)
在数字电路中,需要具有记忆和存储功能的逻辑部件,触发器就是组成这类逻辑部件的基本单元。触发器都具备一下特点:
1777 0
触发器基础知识(上)
|
存储 安全 Ubuntu
群控软件代理,群控服务器配置要求
群控软件代理,群控服务器配置要求
585 8
|
Ubuntu Linux Windows
Install KDE Plasma and XRDP on Ubuntu Server
Install KDE Plasma and XRDP on Ubuntu Server
661 0
Install KDE Plasma and XRDP on Ubuntu Server
|
开发者 容器
flex 布局属性在实际项目中的应用场景有哪些?
flex 布局属性在实际项目中的应用场景有哪些?
|
存储 关系型数据库 MySQL
MySQL中的INSERT INTO SELECT语法及其用法详解
当今的数据库管理系统在数据存储和检索方面起着关键作用,而MySQL作为最受欢迎的开源关系型数据库管理系统之一,提供了许多强大的功能。在MySQL中,INSERT INTO SELECT语法是一种非常有用的功能,可以将查询结果直接插入到目标表中。本文将介绍MySQL中的INSERT INTO SELECT语法及其用法。
2296 0

热门文章

最新文章