写点什么

【架构师训练营 1 期】第七周作业

用户头像
诺乐
关注
发布于: 2020 年 11 月 09 日

1、性能压测的时候,随着并发压力的增加,系统响应时间和吞吐量如何变化,为什么?


(笔记回顾)

性能测试

以系统设计初期规划的性能指标为预期目标,对系统不断施加压力,验证系

统在资源可接受范围内,是否能达到性能预期。


负载测试

对系统不断地增加并发请求以增加系统压力,直到系统的某项或多项性能指

标达到安全临界值,如某种资源已经呈饱和状态,这时候继续对系统施加压力,系统的

处理能力不但不能提高,反而会下降。


压力测试

超过安全负载的情况下,对系统继续施加压力,直到系统崩溃或不能再处理 任何请求,以此获得系统最大压力承受能力。


稳定性测试

被测试系统在特定硬件、软件、网络环境条件下,给系统加载一定业务压 力,使系统运行一段较长时间,以此检测系统是否稳定。在生产环境,请求压力是不均 匀的,呈波浪特性,因此为了更好地模拟生产环境,稳定性测试也应不均匀地对系统施 加压力。


并发量与响应时间和吞吐量的关系如下图所示:


吞吐量 = ( 1000 / 响应时间 ms ) × 并发数


图例分析:a—>b( 随着并发数增加,TPS 快速增加)该阶段系统还没达到设定的目标极限,随着并发数的提升,系统吞吐量也随之提升。即在系统的处理能力之内。这个期间系统响应时间几乎是不变的。

测试目标:通过该阶段“性能测试”验证是否达到预期。


图例分析:b—>c (随着并发数增加,TPS 增长速度变缓)该阶段系统在安全运行期内,吞吐量还在继续提升,但提升速度没有上一个阶段快,而因为可能有某项系统资源已经达到极限,系统响应时间也会随之变长。

测试目标:通过该阶段“负载测试”获得系统安全运行的临界值。


图例分析:c—>d (随着并发数增加,TPS 反而开始逐渐下降)该阶段并发数到达了系统安全运行的临界值,系统已经达到了处理能力的极限,再继续增加并发数,系统就处理不过来了,导致系统响应时间越来越长,吞吐量也就随之降低。当到达 d 点之后,系统已经崩溃,并发数过大导致系统响应时间无限长(吞吐量=(1000 / 响应时间 ms) * 并发数 )系统的吞吐量接近 0。

测试目标:通过该阶段“压力测试”获得系统崩溃的临界值。



系统响应时间随吞吐量变化:


[a, b) 区间,随着吞吐量在持续增大(吞吐量 = (1000 / 响应时间 ms) * 并发数),响应时间变化不大,因硬件能够接收处理这么多流量。

[b, c) 区间,随着吞吐量在持续增大,响应时间逐渐缓慢增长,因硬件已逐渐接近最大负荷。

[c, d) 区间,随着吞吐量在缓慢增加,响应时间快速增长,最终达到最高值,因系统已超负荷并最终崩溃。


用户头像

诺乐

关注

还未添加个人签名 2018.12.01 加入

还未添加个人简介

评论

发布
暂无评论
【架构师训练营 1 期】第七周作业