PTS性能测试企业应用实践

简介: 使用PTS对从本地IDC机房迁移上云在业务切换到云上时需要提前预估下系统性能情况。

企业应用云上性能测试

【业务场景】日程任务管理网站从本地IDC机房迁移上云,在业务切换到云上时需要提前预估下系统性能情况。

【业务指标】 满足同时对集团内的1000用户数并发访问,300用户数并发对日程进行创建、修改、删除等操作,100用户数并发登录。在并发较高的情况下不会产生用户需要等待过长响应时间。

【业务流程】

  1. 用户登录:登录用户的信息来自文件输入
  2. 创建日程:日程信息为随机生成
  3. 日程修改:由上一个创建事件输出的id进行修改
  4. 查看日程:随机获取月、周、日的日程信息

【压测配置信息概要】

  1. 资源包购买:因目标是各api的并发之和为2000,故购买峰值5000并发的资源包。
    image
  2. 业务上是一个流式过程,故放在一个串联链路中,按照业务模型进行API配置:
    i.接口:login,输入参数:username、password,来源文件参数

ii.接口:newSchedule,输入参数:taskInfo 输出参数:taskID, eventState
iii.接口:setSchedule,输入参数:taskID, taskInfo 输出参数eventState
iv.接口:getSchedule,输入参数:taskID,输出参数:taskInfo, eventState
v.接口:delSchedule,输入参数:taskID输出参数:eventState

  1. 压力配置:并发模式,每个API按照 100:300:300:1000:300的最大并发配置,起步设为10%。
    image
  2. 监控信息:采用PTS集成的监控功能(确实很赞!!!)
    image

image
image

【压测过程及结论】

  1. 首先测试按照10%的施压配置进行测试,每次递增10%(每次持续1分钟),到40%时开始发现有和日程相关的api请求成功率开始下降,经排查DMS、CloudMonitor等工具排查后诊断为数据库死锁导致。死锁原因经过分析后由于项目中事务调用产生的PAG范围锁,经过优化后恢复正常。
  2. 第二次压测直接全局调速40%, 压力测试进行到80%时在云监控见到的ECS、RDS内存消耗超过90%,rt明显增高到4000+ms并有超时的情况。进行ECS增加4个节点和RDS的升配之后问题解决。
  3. 第三次压测直接全局调速70%, 整体系统运行正常,施压到100%时getSchedule偶发会出现rt过大或者直接错误的问题。经过一系列排查该api调用参数范围过大时会导致处理时间过长或者直接提示超时,调整tomcat连接超时时长及对该api输入参数范围进行限制解决了该问题。
  4. 第四次压测,施压配置从10% - 100%,压测过程中及在100%压测5分钟的情况下系统rt稳定,无失败的情况出现,系统利用率较好。

**亲测感受:
非常喜欢PTS性能测试工具,对于新手了解文档说明后都可以开箱即用,配置及操作简单,都是可以在控制台完成一系列的操作。
对于产品设计有很多贴心的小细节,例如域名绑定IP即可对单点做性能测试,例如实例及ARMS监控集成都方便了开发者在压测时的操作,例如可以动态去调速全局或单个串联链路。对用使用者来说即高的提升了测试效率及便捷,很赞!!!**

附上压力测试过程中截图
image
image
image
image
image

关于并发虚拟用户、RPS、TPS的区别可以参考官方文献:
https://help.aliyun.com/document_detail/29343.html

相关实践学习
通过性能测试PTS对云服务器ECS进行规格选择与性能压测
本文为您介绍如何利用性能测试PTS对云服务器ECS进行规格选择与性能压测。
目录
相关文章
|
23天前
|
安全 Linux 测试技术
提升龙蜥内核测试能力!探究持续性模糊测试优化实践
清华大学软件学院对Anolis OS使用靶向模糊测试方法将测试工作引向修改的代码,进而提高对业务代码的测试能力。
|
1月前
|
SQL 搜索推荐 测试技术
【Havenask实践篇】完整的性能测试
Havenask是阿里巴巴智能引擎事业部自研的开源高性能搜索引擎,深度支持了包括淘宝、天猫、菜鸟、高德、饿了么在内几乎整个阿里的搜索业务。性能测试的目的在于评估搜索引擎在各种负载和条件下的响应速度、稳定性。通过模拟不同的用户行为和查询模式,我们可以揭示潜在的瓶颈、优化索引策略、调整系统配置,并确保Havenask在用户数量激增或数据量剧增时仍能保持稳定运行。本文举例对Havenask进行召回性能测试的一个简单场景,在搭建好Havenask服务并写入数据后,使用wrk对Havenask进行压测,查看QPS和查询耗时等性能指标。
65383 6
|
2月前
|
安全 测试技术
测试团队的一次复盘实践
测试团队的一次复盘实践
144 0
|
8天前
|
敏捷开发 监控 前端开发
深入理解自动化测试框架Selenium的架构与实践
【4月更文挑战第16天】 在现代软件开发过程中,自动化测试已成为确保产品质量和加快迭代速度的关键手段。Selenium作为一种广泛使用的自动化测试工具,其开源、跨平台的特性使得它成为业界的首选之一。本文旨在剖析Selenium的核心架构,并结合实际案例探讨其在复杂Web应用测试中的高效实践方法。通过详细解读Selenium组件间的交互机制以及如何优化测试脚本,我们希望为读者提供深入理解Selenium并有效运用于日常测试工作的参考。
14 1
|
9天前
|
自然语言处理 测试技术 API
深入理解自动化测试框架Selenium的设计理念与实践
【4月更文挑战第15天】 在现代软件开发过程中,自动化测试已成为确保产品质量和加速迭代的关键手段。Selenium作为一种广泛使用的自动化测试框架,提供了对多种浏览器和平台的支持,极大地促进了Web应用的功能测试。本文旨在剖析Selenium的核心设计理念,探讨其在实际项目中的应用,并指出常见的误区及最佳实践,以期帮助测试工程师更高效地利用Selenium进行测试工作。
|
18天前
|
安全 测试技术
深入理解白盒测试:方法、工具与实践
【4月更文挑战第7天】 在软件开发的质量控制过程中,白盒测试是确保代码逻辑正确性的关键步骤。不同于黑盒测试关注于功能和系统的外部行为,白盒测试深入到程序内部,检验程序结构和内部逻辑的正确性。本文将探讨白盒测试的核心技术,包括控制流测试、数据流测试以及静态分析等方法,同时介绍当前流行的白盒测试工具,并讨论如何在实际项目中有效实施白盒测试。文章的目标是为软件测试工程师提供一份综合性指南,帮助他们更好地理解和应用白盒测试技术。
|
30天前
|
敏捷开发 测试技术 持续交付
深入探索软件测试自动化:框架与实践
在快速演进的软件行业中,测试自动化已成为确保产品质量和加快上市速度的关键因素。本文将深入分析测试自动化框架的构建要点,探讨其在实际应用中的效益,以及实施过程中可能面临的挑战。通过对比手动测试与自动化测试的优势与局限,本文旨在为读者提供一套系统化的测试自动化实践指南,以支持更高效、可靠的软件开发周期。
11 0
|
30天前
|
传感器 监控 算法
【软件设计师备考 专题 】模块测试的方法和实践
【软件设计师备考 专题 】模块测试的方法和实践
73 0
|
1月前
|
敏捷开发 IDE 测试技术
深入理解自动化测试框架Selenium的设计理念与实践
随着敏捷开发和持续集成的理念深入人心,自动化测试在软件开发周期中扮演着越来越重要的角色。Selenium作为一个广泛使用的自动化测试工具,其设计理念和实践对于提高测试效率和质量具有指导意义。本文将深入探讨Selenium的核心设计原则、架构以及最佳实践,旨在帮助读者构建更稳定、高效的自动化测试系统。
|
1月前
|
jenkins 测试技术 持续交付
深入理解自动化测试框架设计原则与实践
本文旨在探讨自动化测试框架的设计原则及其在实际项目中的应用。通过对自动化测试框架的系统剖析,我们揭示了有效构建和维持测试框架的核心要素,并提供了一套实用的指导方案来帮助读者实现高效、可靠的自动化测试流程。文章不仅聚焦于框架的技术细节,也强调了灵活性、可维护性和可扩展性在设计时的重要性,同时结合实际案例分析,展示了如何在不同测试环境中定制化和优化测试框架。

热门文章

最新文章