秒杀活动测试方案

上一篇 / 下一篇  2021-06-09 10:12:06 / 个人分类:其他

秒杀场景的特点:
定时开始、库存有限、操作可靠
一、开发人员需要注意的事项
现有的秒杀活动持续时间短,瞬间数量大,为了不影响其他业务的正常运行,需要把它从业务、技术、数据上做隔离,架构设计需要分几层来考虑,从客户请求到数据库存储,到最后上线前的压力测试
  1. 数据库设计(数据量特别大的情况下可使用:分表、分库、加索引等);
  2. redis+session管理;
  3. 参数校验+全局异常处理;
  4. 前端静态资源压缩整合;
  5. 使用CDN;
  6. 缓存;
  7. 读写分离。
隔离(业务隔离、系统隔离、数据隔离)、动静分离、分层校验(大量的数据做成是漏斗式设计)
参考链接:http://www.51testing.com/html/62/n-3720162.html
二、压力测试方案:
首先确定测试步骤,且同步确定测试要求,如下:
  1. 确定测试目标:与性能测试不同的是,压力测试的目标是什么时候系统接近崩溃;
  2. 确定关键功能:针对核心功能进行压力测试,如:下单、库存扣减;
  3. 确定负载:不是每个服务都有高负载的,我们的测试其实是要关注那些负载量大的服务,或者是一段时间内系统中某些服务的负载有波动。这些都是测试目标;
  4. 选择环境:建议搭建和生产环境一模一样的环境进行测试;
  5. 确定监测点:实际上就是对关注的参数进行监视,例如CPU负载,内存使用率,系统吞吐量等等;
  6. 产生负载:这里需要从生产环境去获取一些真实的数据作为负载数据源,这部分数据源根据目标系统的承受要求由脚本驱动,对系统进行冲击。建议使用往期秒杀系统的数据,或者实际生产系统的数据进行测试;
  7. 执行测试:这里主要是根据目标系统,关键组件,用负载进行测试,返回监视点的数据。模拟不同的网络环境,硬件条件进行有规律的测试;
  8. 分析数据:对关键服务的压力测试数据进行分析得知该服务的承受上限在哪里。对一段时间内有负载波动或者大负载的服务进行数据分析,得出服务改造的方向。
三、性能测试关注点
  • 测试的目的:
  1. 了解秒杀系统在高并发下,系统是否稳定;
  2. 了解秒杀系统性能瓶颈,并进行优化;
  3. 通过业务场景压力测试实施,为系统调优提供数据参考。
  • 业务分析:
  1. 用户**/登录页面并发测试
  2. 用户填写信息页面并发测试
  3. 用户提交订单页面并发测试
  4. 后台数据库压力测试
  • 测试指标
  1. 用户并发数:15000
  2. 交易响应时间:<=3秒,性能优异,<=5秒性能良好,>=10秒,性能不好接受
  3. 交易吞吐量:后台主机每秒处理事务数
  4. 并发交易成功率>=99%
  • 测试资源指标
关注服务器资源使用情况,监控的服务器包括API服务器和数据库服务器
系统CPU占用率:<=80%;系统内存使用率:<=80%;系统I/O使用率:<=80%

TAG:

 

评分:0

我来说两句

日历

« 2021-11-29  
 123456
78910111213
14151617181920
21222324252627
282930    

数据统计

  • 访问量: 3500
  • 日志数: 39
  • 建立时间: 2021-05-08
  • 更新时间: 2021-06-21

RSS订阅

Open Toolbar