架构师训练营课后总结 - 性能测试

用户头像
superman
关注
发布于: 2020 年 07 月 22 日

1:系统性能指标

客观指标:

给用户感知的性能,用户感知的是响应性。

主观指标:

性能测试出来的系统指标

  

2:主要性能测试客观指标:

响应时间:发起请求到收到响应时间,一般用毫秒表示。

并发数:请求并发数

吞吐量:公式(1000/响应时间)*并发数

单位时间内系统处理的请求数量,一般用请求数/秒表示。 常见的TPS(每秒事务数),HPS(每秒http请求数),QPS(每秒查询数)

性能计数器:系统的 cpu,systemload ,内存,网络,硬盘,线程数等指标。监控这些指标,设置报警阀值。

 

3:测试方法

主要包括:性能测试,负载测试,压力测试,稳定性测试

 

性能测试:

目的测试系统是否符合预期目标。

           对系统不断添加压力,验证系统资源在可承受范围内,符合性能预期(响应时间)。

负载测试:

对系统不断添加压力达到资源瓶颈点。

达到资源瓶颈点后,如果系统做限流抛弃处理不了的请求,可以保持平稳,否则响应时间不断变长,直至系统响应不过来,吞吐量不断下降。

压力测试:

达到资源瓶颈后继续施加压力,看系统的承受力。

稳定性:

模拟现实场景,长时间,不均匀加压看系统是否可稳定运行。

4:性能测试结果

对系统不断加压,观察响应时间的变化。起始阶段系统的响应时间没有明显变化,压力达到某个点后响应时间会逐渐变长,继续加压,达到某个临界点响应时间超过可用性,并突然加大。吞吐量先上升后平稳再下降。

吞吐量随并发数的变化示意图



响应时间随并发数的变化示意图





不同系统实现曲线不同,但吞吐量都是先上升后平稳再下降。而响应时间是先不变,后升高。

性能测试的结果就是找到本系统的性能曲线图,然后让系统在安全边际内运行。

系统的运行区间选择

可以让系统在保证最佳响应时间的区间内运行(b点左侧运行),也可以让系统在安全情况下发挥最大性能,尽量在高吞吐量下运行(b点右侧,c点左侧)。

具体偏向哪个位置根据公司资源情况与对将来系统并发的预测。

资源充足或预计并发增长较快就保留比较大的安全区。否则就尽量让系统发挥最大性能。



系列目录

性能优化专题

性能测试

性能优化概述



用户头像

superman

关注

还未添加个人签名 2018.07.20 加入

还未添加个人简介

评论

发布
暂无评论
架构师训练营课后总结-性能测试