《云上大型赛事保障白皮书》——第三章 压测调优与技术演练——3.1 云上大型赛事压测调优——3.1.2 云上大型赛事压力测试方法论(上)

简介: 《云上大型赛事保障白皮书》——第三章 压测调优与技术演练——3.1 云上大型赛事压测调优——3.1.2 云上大型赛事压力测试方法论(上)

3.1.2 云上大型赛事压力测试方法论


压力测试的六大核心要点:明确压测目标、梳理压测链路、设计压测方案、配置压测环境、实施压测计划、解决压测问题。


3.1.2.1 明确压测目标


明确压力测试最终需要达到的目标,是设计与实施整个压测方案的先决条件。目前常见的压测目标可分为两类:一类是基于系统监控找水位,即在系统资源濒临阈值时检查QPS以及对应RT,即为该系统的水位。一般用于评估业务系统可承受的QPS,从而判断当前系统架构是否可满足业务需求。一类是基于预估压力判断业务是否可正常运行,即在稳定的QPS下判断系统是否存在性能瓶颈,业务链路是否可正常运行。一般是用于在大型运营活动前,基于预估QPS对系统进行压测,提前找出性能瓶颈,保证运营活动正常运行。

对于大型赛事活动的压测一般是第二类,即首先由业务方预估赛时的压力情况,再通过压测系统模拟该压力找到系统瓶颈。这里需要注意的是,业务方需要给定一个明确的预估压力值,例如1000并发用户数、8万QPS等,如果没有最终目标,压测就会进入不知道压到什么程度才算完成的尴尬局面。并且,这个压力值是基于业务层模拟推导计算出来的,例如,冬奥通APP业务峰值是x万日活用户,对某个页面,根据业务观察,每个用户平均每天会打开10次,打开一次该页面的请求数为5个,那么我们考虑比较极端情况,假设所有用户的这10次请求都集中在某1个小时内,那么该页面的QPS要求即为:xk * 10 * 5 / 3600 = x QPS。再例如,云展厅项目有一个高并发的秒杀业务,预估用户数为8k,假设用户的一次点击产生一次请求,那么这个业务的QPS要求即为8k QPS。


3.1.2.2 梳理压测链路


梳理目标系统整体的架构及业务链路,可以体系化的帮助理解当前系统的业务链、业务链之间的依赖关系、功能点所在的业务位置等等,是后续抽象压测模型、划分压测场景、设计压测方案、解决压测问题的关键依据。通常来讲,链路梳理的越细致,后续的工作就会越流畅。

对于大型赛事而言,子系统繁多,链路间调用关系复杂,梳理起来对应的工作内容会比较多。一个比较好的最佳实践是根据系统架构图来理解每条接口链路情况,在下文冬奥通APP压测总结中我们将会看到,一个完整详细的系统架构图对链路梳理起了非常大的帮助。

在梳理过程中也可以同时分析潜在的瓶颈点,并针对性的增加监控指标、制定应急预案等。例如,负载均衡产品潜在高频问题为容量不足、建连失败等,针对容量不足风险,可通过观察超限丢包指标来进行判断。数据库产品常见问题为连接池耗尽、慢查询等,可通过连接池监控、SQL语句执行时间监控等来进行判断。不同风险的判断指标需要落在压测方案中。


《云上大型赛事保障白皮书》——第三章 压测调优与技术演练——3.1 云上大型赛事压测调优——3.1.2 云上大型赛事压力测试方法论(下): https://developer.aliyun.com/article/1226643?groupCode=supportservice

相关文章
|
监控 数据可视化 Java
jvm性能调优实战 - 31从测试到上线_如何分析JVM运行状况及合理优化
jvm性能调优实战 - 31从测试到上线_如何分析JVM运行状况及合理优化
399 1
|
8月前
|
人工智能 数据可视化 测试技术
Postman 性能测试教程:快速上手 API 压测
本文介绍API上线后因高频调用导致服务器告警,通过Postman与Apifox进行压力测试排查性能瓶颈。对比两款工具在批量请求、断言验证、可视化报告等方面的优劣,探讨API性能优化策略及行业未来发展方向。
Postman 性能测试教程:快速上手 API 压测
|
8月前
|
测试技术 UED 开发者
性能测试报告-用于项目的性能验证、性能调优、发现性能缺陷等应用场景
性能测试报告用于评估系统性能、稳定性和安全性,涵盖测试环境、方法、指标分析及缺陷优化建议,是保障软件质量与用户体验的关键文档。
红队测试方法论-课程笔记
红队测试方法论-课程笔记
红队测试方法论-课程笔记
|
缓存 Java 测试技术
谷粒商城笔记+踩坑(11)——性能压测和调优,JMeter压力测试+jvisualvm监控性能+资源动静分离+修改堆内存
使用JMeter对项目各个接口进行压力测试,并对前端进行动静分离优化,优化三级分类查询接口的性能
910 10
谷粒商城笔记+踩坑(11)——性能压测和调优,JMeter压力测试+jvisualvm监控性能+资源动静分离+修改堆内存
|
缓存 监控 测试技术
全网最全压测指南!教你如何测试和优化系统极限性能
大家好,我是小米。本文将介绍如何在实际项目中进行性能压测和优化,包括单台服务器和集群压测、使用JMeter、监控CPU和内存使用率、优化Tomcat和数据库配置等方面的内容,帮助你在高并发场景下提升系统性能。希望这些实战经验能助你一臂之力!
1508 3
|
监控 Java 测试技术
实战派必看!Python性能测试中,JMeter与Locust如何助力性能调优
【8月更文挑战第6天】性能优化是软件开发的关键。本文介绍JMeter与Locust两款流行性能测试工具,演示如何用于Python应用的性能调优。JMeter可模拟大量用户并发访问,支持多种协议;Locust用Python编写,易于定制用户行为并模拟高并发。根据场景选择合适工具,确保应用在高负载下的稳定运行。
525 4
|
监控 Java 测试技术
Java性能测试与调优工具使用指南
Java性能测试与调优工具使用指南
|
缓存 监控 前端开发
【Flutter前端技术开发专栏】Flutter应用的性能调优与测试
【4月更文挑战第30天】本文探讨了Flutter应用的性能调优策略和测试方法。性能调优对提升用户体验、降低能耗和增强稳定性至关重要。优化布局(避免复杂嵌套,使用`const`构造函数)、管理内存、优化动画、实现懒加载和按需加载,以及利用Flutter的性能工具(如DevTools)都是有效的调优手段。性能测试包括基准测试、性能分析、压力测试和电池效率测试。文中还以ListView为例,展示了如何实践这些优化技巧。持续的性能调优是提升Flutter应用质量的关键。
548 0
【Flutter前端技术开发专栏】Flutter应用的性能调优与测试
|
监控 Java 测试技术
性能测试:主流压测工具介绍
**性能压测工具摘要:** - Apache AB:命令行基准测试工具,简单轻量,用于评估服务器性能。 - Apache JMeter:开源Java框架,支持多种协议,适合复杂负载测试,提供丰富的图表和报告。 - nGrinder:开源,提供直观界面,支持分布式测试,录制回放脚本,实时监控。 - Locust:Python基础,适用于HTTP/WebSocket测试,可扩展,实时监控。 - LoadRunner:Micro Focus的商业工具,广泛支持多种协议,功能强大。