TECHNOLOGY_FRONTIER

>> 已收录 ${postCount} 项技术方案

性能测试二:测试场景

1.基准测试


 获取单用户运行的各项性能指标,线程间增加thinktime,多次执行。

基准测试的作用
  • .验证测试环境、测试脚本、测试参数的正确性。
  • 获取系统处理少量并发用户的性能数据(响应时间、成功率),作为负载测试对比参考基准。
  • 根据测试结果,初步评价可能成为系统瓶颈的场景,并后续进行针对性测试。
 

2.单交易负载测试


通过模拟虚拟用户,模拟建议梯度翻倍,如(5,10,20,50,100vuser…)进行,每个虚拟用户级别建议做单独场景(利于分析),并持续循环运行一定时间(5/10/15min),
获取事务响应时间,tps,报错率监测测试系统的各服务器资源使用情况(各服务器的CPU、内存、磁盘、网络等资源的使用状况),每一个虚拟用户级别会对应tps,直到找到性能的拐点。
做单独场景分析,而不做梯度加压的原因:
  • 并不是每一个量级性能表现都是类似的
  • 梯度报表图形化处理会失真,现找不到拐点
  • 固定虚拟用户可以将自己的精力聚焦在诊断上
 

3.容量测试


测量系统的最大容量,为系统扩容,性能优化提供参考,节省成本投入,提高资源利用率。
被测系统各个高频交易按照一定的比例配置模型,通过模拟虚拟用户,并持续循环运行一定时间(5/10/15min)
获取事务响应时间,tps,报错率监测测试系统的各服务器资源使用情况(各服务器的CPU、内存、磁盘、网络等资源的使用状况),每一个虚拟用户级别会对应tps,直到找到性能的拐点。
问题1:各个服务/接口占比如何确定?
已上线系统按照生产统计的接口调用频率统计;
新系统按照业务逻辑确定,并按照查询接口与业务接口3:1的比例统计;
问题2:利用Jmeter工具如何进行容量测试?
  • 方法1:一个接口独占一个线程组,预设TPS,并逐步增加TPS(通过单交易负载测试获取接口响应时间,通过“固定定时器”调整流量,调整方法Pacing(ms)=1000*并发用户数/TPS,结果向上取整数)备注:已知TPS及响应时间,并发用户数=TPS*响应时间(秒)
  • 方法2:多个接口共用一个线程组,逐步增加并发用户数(通过“逻辑控制器”-“吞吐量控制”调整接口流量;各个线程串行执行
  • 方法3:多个接口共用一个线程组,逐步增加并发用户数(通过“逻辑控制器”-“bzm-并行控制器(bzm - Parallel Controller)”;各个线程并行执行备注该控制器需单独下载

 

4.稳定性测试


 即压力测试,稳定性测试是通过给系统加载一定压力的情况下,运行较长一段时间,验证系统是否稳定

比如我们稳定性测试采用典型混合场景,应用系统运行7*24小时,需要运行24小时,查看系统运行指数是否平稳
 
稳定性测试注意点
  • 稳定性测试在性能测试中是一个相对严苛的场景
  • 稳定性测试的监控级别应当是你们公司的最高级别
  • 稳定性之前需要有充足的预案和监控报警
  • 选取的访问量:今年的峰值是明年的正常流量,所以对于大流量电商公司或者网红公司可以用峰值去跑稳定性

 

5.专项测试


 高可用测试:验证分布式系统应用服务器和数据库服务器某一个节点故障(集群节点挂起、集群节点异常、集群节点宕网卡)后是否满足高可用预期,包括RTO(恢复时间)和 RPO(数据丢失量)

  • 限流:验证网关、注册中心等组件限流功能
  • 熔断/降级:验证微服务熔断降级功能是否有效
  • 超时有效性:修改模拟器延时时间大于被测系统超时配置,显示超时报错
  • 横向扩展性:增加或减少服务器数量,一般每增加一个应用服务器节点性能提升75%
  • 纵向扩展性:增加或减少服务器配置
  • 容灾测试:验证两地三中心中,主中心与容灾中心,当各种灾害异常时是否满足容灾预期

 

 6.端到端测试


即全链路测试:基于实际的生产业务场景和系统环境,模拟海量的用户请求和数据,对整个业务链路进行各种场景的测试验证,持续发现并进行瓶颈调优,保障系统稳定性的一个技术工程。

生产压测:区别与端到端测试在单独的测试环境进行全链路测试,生产压测在生产环境中进行全链路测试。

全链路压测解决的问题:精准的容量规划

业务流量预估阶段:通过历史数据分析未来某一个时间点业务的访问量会有多大
系统容量评估阶段:初步计算每一个系统需要分配多少机器
容量的精调阶段:通过全链路压测来模拟大促时刻的用户行为,在验证站点能力的同时对整个站点的容量水位进行精细调整
流量控制阶段:对系统配置限流阈值等系统保护措施,防止实际的业务流量超过预估业务流量的情况下,系统无法提供正常服务流量控制阶段:对系统配置限流阈值等系统保护措施,防止实际的业务流量超过预估业务流量的情况下,系统无法提供正常服务

 

 

posted on 2025-03-20 11:29  王元安  阅读(19)  评论(0)    收藏  举报