阿里云性能测试工具PTS介绍

简介: 性能测试 PTS(Performance Testing Service)是具备强大的分布式压测能力的 SaaS 压测平台,可模拟海量用户的真实业务场景,全方位验证业务站点的性能、容量和稳定性。

阿里云
阿里云智能GTS-平台技术部-SRE团队

1.简介

(1)概述

性能测试 PTS(Performance Testing Service)是具备强大的分布式压测能力的 SaaS 压测平台,可模拟海量用户的真实业务场景,全方位验证业务站点的性能、容量和稳定性。
PTS 目标是将性能压测本身的工作持续简化,使用户可以将更多的精力回归到关注业务和性能问题本身。在 PTS 平台上,用户可以用较低的人力和资源成本,构造出最接近真实业务场景的复杂交互式流量,快速衡量系统的业务性能状况,为性能问题定位、容量最佳配比、全链路压测的流量构造提供最好的帮助。进而提升用户体验,促进业务发展,最大程度实现企业的商业价值。

(2)压测流程

PTS 提供全面高效的压测流程,具体如下图所示。

1.png
图1:PTS压测流程图

压测流程说明:

  1. 在 PTS 控制台上,准备压测 API 数据,构造压测场景,定义压测模式、量级等;支持随时启停压测,压测过程中可调速。
  2. 压测启动后,PTS 后台的压测控制中心将自动调度压测数据、压测任务和压测引擎。
  3. 通过随机调度全国上百个城市和运营商的内容分发网络 CDN (Content Delivery Network)节点,发起压测流量。保证从虚拟用户并发量、压测流量的分散度等维度都接近真正的用户行为,压测结果更加全面和真实可信。
  4. 通过压测引擎向用户指定的业务站点发起压测。
  5. 压测过程中,通过集成云监控产品,结合 PTS 自有的监控指标,实时采集压测数据。
  6. 在 PTS 控制台,实时展现压测数据,进行过程监控;压测结束后,生成压测报告。基于整个压测场景的性能表现,定位性能问题、发现系统瓶颈。

(3)压测创建方式

PTS 支持以下 4 种方式创建压测场景(或称压测用例),如图所示:

2.png图2:压测场景创建方式

说明:

  • 方式一: PTS 自研零编码可视化编排,使用自研强大引擎压测。
  • 方式二: 使用 PTS 自研云端录制器的使用,零侵入录制业务请求并导入 1 中的自研交互中进行进一步设置。
  • 方式三: 将导入脚本压测 1 中的 PTS 自研交互中,使用 PTS 自研引擎。
  • 方式四: JMeter 原生压测并使用原生 JMeter 引擎进行压测,PTS 提供自定义的压力构造和监控数据汇聚等产品服务。

其中,方式一、二、三由于使用了 PTS 的自研引擎,具备 RPS(Requests per Second)吞吐量压测模式、秒级启动、实时控制、定时压测和流量遍布全国运营商网络的差异化能力,其中方式一是 PTS 最核心的一种压测场景创建方式。

2. 具体功能

PTS 以互联网化的交互为基础,提供丰富的 API 编排功能。支持按需设定压测模式、压测量级、压测时间,快速发起压测,监控压测过程并生成报告。同时也兼容开源工具 JMeter,确保流畅的压测体验。

(1)压测场景构建

要发起一次性能压测,首先需要创建一个压测场景,进行业务 API 的编排。主要功能如下:

  • 支持多个 API 并行或者有序串行。
  • 支持 API 地址中添加参数,实现请求的动态变化。参数主要包括系统函数、文件参数、字符串、出参、其他自定义参数和它们彼此之间的组合。
  • 支持 Cookie 传递,模拟用户登录场景。
    提供丰富的指令功能,如集合点、思考时间等,扩展场景的仿真度。
  • 支持压测前的场景调试,可进行复杂场景的数据流向校验。
  • 提供云端录制器,便于移动端的请求抓取,可一键导入到压测场景中。

(2)压测流量控制

压测流量的控制是性能压测中最重要的一环。主要功能如下:

  • 支持两种压测模式:并发模式(虚拟用户并发)和 RPS 模式(Request per Second,即吞吐量模式)。RPS 压测模式为 PTS 独有,能够更精准地衡量服务端系统的能力。
  • 随机调度遍布全国各地的压测引擎,一分钟内快速启动压测。
  • 支持定时压测,可指定启动压测的日期、时间及循环周期等。结合服务等级定义 SLA(Service Level Agreement)指标监控,触发告警或停止压测,实现智能压测。
  • 支持两种调速模式:自动递增和手动调整。压测流量的调整秒级生效。
  • 支持最高千万级的流量瞬时脉冲,多重机制确保压测流量及时停止。

(3)压测数据监控

PTS 提供压测过程监控,展现实时数据。主要功能如下:

  • PTS 的监控指标包括每个 API 的并发、TPS (Transactions per Second)、响应时间、采样的日志等。同时从不同细分维度,统计了 API 请求的成功、失败情况和响应时间。
  • 支持添加阿里云生态内的云监控产品,可提供包括 ECS、SLB 和 RDS 在内的各产品的性能指标监控。
  • 支持创建服务等级协议 SLA(Service Level Agreement)规则并关联到不同的业务场景,对业务压测场景进行更智能的控制和更全面合理的评价,同时 PTS 也提供了大量 SLA 模板。

(4)压测报告导出

在压测停止之后,系统会自动收集压测过程中的监控数据(包括云监控的数据),形成压测报告,供用户查看和导出。

(5)开源工具(JMeter)集成

除了强大的原生功能,同样支持开源压测工具 JMeter 引擎发起的压测。用户只需要在本地完成 JMeter 脚本调试,即可在 PTS 上快速进行自定义并发的压测。同时,可在控制台上进行Timer、Controller相关指令的分布式适配设置。

3.优势

PTS 对比一般的压测工具,具有平台稳定可靠、功能强大、流量真实和配套完善等优势。

(1)平台稳定可靠

  • 阿里巴巴中间件技术部高可用团队倾心打造,经过内部五年以上的全生态沉淀,平台及技术稳定性高。
  • PTS 是基于支持阿里巴巴全生态多达五年的单链路/全链路压测平台的再加强版本。
  • PTS 支持了多个行业,涉及电商、多媒体、金融保险、物流快递、广告营销、社交等等。

(2)功能强大

  • 全 SaaS 化形态,无需额外安装和部署。
  • 0 安装的云端录制器,更适合移动端APP场景。
  • 数据工厂功能,0 编码实现压测的 API/URL 的请求参数格式化。
  • 复杂场景的全可视化编排,支持登录态共享、参数传递、业务断言,同时可扩展的指令功能支持多形态的思考时间、流量蓄洪等。
  • 独创的 RPS /并发多压测模式。
  • 流量支持动态秒级调整,百万 QPS 亦可瞬时脉冲。
  • 强大的报表功能,将压测客户端的实时数据做多维度细分展示和统计,同时自动生成报告供查阅和导出。
  • 压测 API/场景均可调试,压测过程提供日志明细查询。

(3)流量真实

  • 流量来源于全国上百城市覆盖各运营商(可拓展至海外),真实模拟最终用户的流量来源,相应的报表、数据更接近用户真实体感。
  • 施压能力无上限,最高支持千万 RPS 的压测流量。

(4)配套完善

  • 除了压测平台之外,可付费增值提供全链路压测解决方案输出,全方位保障站点平稳应对业务峰值。

4.应用场景

性能测试 PTS(Performance Testing Service)具备强大的分布式压测能力,应用十分广泛。

(1)适用于多业务场景

不论您处于哪个行业,在以下业务场景(但不限于),PTS 都是您最佳的性能测试工具。

3.png
图3:PTS业务场景展示

  • 新系统上线:通过 PTS,准确探知站点能力,防止系统一上线即被用户流量打垮;
  • 技术升级验证:大的技术架构升级后进行性能评估,验证新技术场景的站点性能状态;
  • 业务峰值稳定性:大促活动等峰值业务稳定性考验,保障峰值业务不受损;
  • 站点容量规划:对站点进行精细化的容量规划,分布式系统机器资源分配;
  • 性能瓶颈探测:探测系统中的性能瓶颈点,进行针对性优化。

(2)适用行业广泛

PTS 应用行业广泛,涉及电商、多媒体、金融保险、物流快递、广告营销、社交等等。
PTS 服务阿里巴巴全生态多年,支持了天猫双 11、双 12、年货节等大促活动。植根于电商行业的 PTS,对电商的典型业务模型支持得更友好,压测来源更广泛,脉冲能力和流量掌控能力更强。
PTS 自商业版发布以来,吸引了来自多媒体、金融保险、政务等众多行业的用户,以其强大的压测场景编排能力和报表能力,帮助用户快速发现问题,进行针对性地调优,提升了系统承压能力。

(3)适用于多种网络环境

不论您的业务位于公有云、专有云、混合云、或者自建 IDC 中,只要能够通过公网访问,PTS 都能够通过遍布全国上百个城市和各运营商的 CDN 节点发起压测流量,最大程度地模拟真实业务场景。

(4)适用于使用 HTTP/HTTPS/WebSocket 等协议的客户端

PTS 本身的 GUI 模式支持 HTTP/HTTPS 协议的压测,无论您的客户端是自研的 APP、移动端网页、PC 端网页、微信小程序还是 C/S 结构的软件,都可以使用 PTS 进行压测。 PTS 同时集成了开源 JMeter,支持更多的协议和场景,例如您可以通过 “JMeter + WebSocket 插件” 的方式,对使用 WebSocket 协议的客户端进行压测(在 PTS 上传相应的插件 JAR 文件即可),其他协议以此类推。

 

原文链接
本文为阿里云原创内容,未经允许不得转载。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/514657.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

php微信公众号的服务器配置,微信公众号服务器配置选项PHP示例代码

最近微信公众号遇到有点奇怪的问题,使用的是tp框架,之前配置都ok的,最近有需求重新填写url选项,可配置时一直显示token失败,解决方案,参考以下php示例代码来修改,同时最好把输出注释掉。最后通过…

Dubbo 3.0 前瞻系列 | 2020双11,Dubbo3.0 在考拉的超大规模实践

很多开发者一直以来好奇:阿里自己有没有在用Dubbo,会不会用Dubbo?在刚刚结束的双11,我们了解到阿里云今年提出了“三位一体”的理念,即将“自研技术”、“开源项目”、“商业产品”形成统一的技术体系,最大…

OpenStack管理界面开源啦!

日前,木兰开源社区TOC召开了孵化项目审议会议,其项目分别覆盖数据库、大数据处理、网络、流媒体、云计算等关键领域。其中,浪潮数据纯自研产品Skyline成功入围。 自开源至今,OpenStack常被诟病的一点是原生界面不太好用&#xff…

厂商 push 不通排查指南

简介: MPS 集成多个三方渠道,保障 push 使命必达的必须知道的几件事。 为了提升「MPS 消息推送」的推送的到达率,mPaaS 集成了华为、小米等厂商的推送功能,从而有效地提高用户留存率,提升用户体验。在日常运维过程中&a…

Hologres助力飞猪双11实时数据大屏秒级响应

简介: 本文重点介绍Hologres如何落地阿里巴巴飞猪实时数仓场景,并助力飞猪双11实时数据大屏3秒起跳,全程0故障。 摘要:刚刚结束的2020天猫双11中,MaxCompute交互式分析(下称Hologres)实时计算F…

燧原科技首发国内第二代人工智能训练芯片“邃思2.0”

7月7日,燧原科技发布第二代人工智能训练产品——“邃思2.0”芯片、基于邃思2.0的“云燧T20”训练加速卡和“云燧T21”训练OAM模组,全面升级的“驭算TopsRider”软件平台以及全新的“云燧集群”,成为国内首家发布第二代人工智能训练产品组合的…

高德最佳实践:Serverless 规模化落地有哪些价值?

作者 | 何以然(以燃) 导读:曾经看上去很美、一直被观望的 Serverless,现已逐渐进入落地的阶段。今年的"十一出行节",高德在核心业务规模化落地 Serverless,由 Serverless 支撑的业务在流量高峰期…

Java全能手册火了!Redis/Nginx/Dubbo/Spring全家桶/啥都有

前言本文是为了帮大家快速回顾了Java中知识点,这套面试手册涵盖了诸多Java技术栈的面试题和答案,相信可以帮助大家在最短的时间内用作面试复习,能达到事半功倍效果。本来想将文件上传到github上,但由于文件太大有的都无法显示所以…

存储计算解耦合,构建中国人英语语音数据库

简介: 通过阿里云为流利说量身打造的数据湖解决方案,解决了流利说多种应用的各类数据的统一存储,帮助流利说构建数据规模高达上千亿的“中国人英语语音数据库”。 公司介绍 流利说是世界领先的科技驱动的教育公司,作为智能教育的…

Hologres+Flink流批一体首次落地4982亿背后的营销分析大屏

简介: 本篇将重点介绍Hologres在阿里巴巴淘宝营销活动分析场景的最佳实践,揭秘FlinkHologres流批一体首次落地阿里双11营销分析大屏背后的技术考验。 概要:刚刚结束的2020天猫双11中,MaxCompute交互式分析(下称Hologr…

Service Mesh微服务熔断、限流的骚操作

在微服务架构中,随着服务调用链路变长,为了防止出现级联雪崩,在微服务治理体系中,熔断、限流作为服务自我保护的重要机制,是确保微服务架构稳定运行的关键手段之一。那么什么是熔断、限流?在传统Spring Clo…

pca主成分分析用matlab实现,PCA (主成分分析)详解 (写给初学者) 结合matlab

一、简介PCA(Principal Components Analysis)即主成分分析,是图像处理中经常用到的降维方法,大家知道,我们在处理有关数字图像处理方面的问题时,比如经常用的图像的查询问题,在一个几万或者几百万甚至更大的数据库中查…

微服务最佳实践:MSE 微服务引擎

简介: 微服务引擎 MSE(Microservice Engine)是一个面向业界主流开源微服务框架 Spring Cloud 和 Dubbo 的一站式微服务平台。其由四个主要部分组成:微服务治理中心、微服务注册中心、微服务配置中心、微服务网关。 MSE 是什么 微…

异地多活之企业架构案例

简介: 异地多活之企业架构案例 1. 前言 多活容灾 MSHA(Multi-Site High Availability),是在阿⾥巴巴电商业务环境演进出来的多活容灾架构解决⽅案,可以将业务恢复和故障恢复解耦,有基于灵活的规则调度、跨…

WAIC|高精准、低成本,九章云极DataCanvas突破AutoML难题

2021 年世界人工智能大会(WAIC)于 7 月 8 日 在上海世博中心拉开帷幕。九章云极DataCanvas董事长方磊受邀参加由世界人工智能大会组委会主办、机器之心承办的“2021 WAICAI开发者论坛”,并发表“Hypernets:自动化机器学习的基础框…

matlab样条插值如何用,三次样条插值matlab实现

%三次样条差值-matlab通用程序 - zhangxiaolu2015的专栏 - CSDN博客 https://blog.csdn.net/zha%【图文】三次样条插值算法详解_百度文库 https://wenku.baidu.com/view/14423f2e1711cc7931b716clcclearxinput(请按照格式[x1,x2,x3...]格式输入yf(x)函数已知点的横坐标xi); %三…

在阿里淘系6个月能有哪些收获成长?

本文作者:刘博文(Berwin),花名“玖五”,畅销书《深入浅出Vue.js》作者、知名技术博主、讲师、阿里巴巴淘系技术部前端技术专家,现负责淘系618、双11等超大型营销活动主会场的终端渲染架构。 回想起年初刚来…

matlab 向前欧拉公式,向前欧拉公式在Matlab解微分方程初值解的问题

向前欧拉公式在Matlab解微分方程初值解的问题0fuqilin1202013.07.04浏览527次分享举报用向前欧拉公式(10.8)求解初值问题,dy/dx-3x8x-7,y(0)1,分别取n10,n100,并将计算结果与精确解作比较,写出在每个子区间[xk,xk1]上的局部截断误差公式&…

我在阿里巴巴做 Serverless 云研发平台

简介: Serverless 云研发平台经过这半年多的蜕变,已经从简单的解决工程链路的平台演进成一个面向研发、上线、运维的全生命周期研发平台,后续要解决的命题会集中在用户低门槛上。 作者 | 林昱(苏河) 技术的成熟度源自大规模的实践&#xff0…

从Gartner报告,看中国数据库崛起

简介: 阿里云,在Gartner公布2020年度全球数据库魔力象限评估结果,作为中国科技公司代表,首次挺进全球数据库第一阵营——领导者(LEADERS)象限,这也是中国数据库40年来首次进入全球顶级数据库行列…