写点什么

架构师训练营 - 第 7 周命题作业

用户头像
红了哟
关注
发布于: 2020 年 08 月 15 日
架构师训练营 - 第 7 周命题作业

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





  • 在并发数量增加的过程中,一开始 TPS 是随着并发数增加而增加的,但是响应时间会处在较低的状态,也就是第1条虚线的位置。

  • 接着响应时间开始有些增加,达到最大TPS,第2条虚线的位置。

  • 这是继续增加并发数量,响应时间会接着增加,但是 TPS 会下降(这里不是必然的,有些系统会保持稳定的TPS)

  • 最后,响应时间过长,达到了超时的状态。

这是老师的ppt里提供的两个图。性能测试学习过程中,常见的图也包括下面这个



https://time.geekbang.org/column/article/178076





在这个图中,定义了三条曲线、三个区域、两个点以及三个状态描述。



三条曲线:吞吐量的曲线(紫色)、使用率 / 用户数曲线(绿色)、响应时间曲线(深蓝色)。



三个区域:轻负载区(Light Load)、重负载区(Heavy Load)、塌陷区(Buckle Zone)。



两个点:最优并发用户数(The Optimum Number of Concurrent Users)、最大并发用户数(The Maximum Number of Concurrent Users)。



三个状态描述:资源饱和(Resource Saturated)、吞吐下降(Throughput Falling)、用户受影响(End Users Effected)。



从图中可以看到,随着负载的增大,随着并发用户的增长,系统响应时间,吞吐率的变化。



当然,上图有一些不精确的地方,简化出另一个图形,以说明更直接一点的关系。如下所示:





在 TPS 增加的过程中,响应时间一开始会处在较低的状态,也就是在 A 点之前。接着响应时间开始有些增加,直到业务可以承受的时间点 B,这时 TPS 仍然有增长的空间。再接着增加压力,达到 C 点时,达到最大 TPS。我们再接着增加压力,响应时间接着增加,但 TPS 会有下降(请注意,这里并不是必然的,有些系统在队列上处理得很好,会保持稳定的 TPS,然后多出来的请求都被友好拒绝)。最后,响应时间过长,达到了超时的程度



  1. 用你熟悉的编程语言写一个 web 性能压测工具,输入参数:URL,请求总次数,并发数。输出参数:平均响应时间,95% 响应时间。用这个测试工具以 10 并发、100 次请求压测 www.baidu.com。



发布于: 2020 年 08 月 15 日阅读数: 53
用户头像

红了哟

关注

还未添加个人签名 2019.08.15 加入

还未添加个人简介

评论

发布
暂无评论
架构师训练营 - 第 7 周命题作业