极客大学架构师训练营 性能测试 第七次作业
题目一:性能测试响应时间,吞吐量变化
性能压测的时候,随着并发压力的增加,系统响应时间和吞吐量如何变化,为什么?
稳定性测试
被测试系统在特定硬件、软件、网络环境条件下,给系统加载一定业务压力,使系统运行一段较长时间,以此检测系统是否稳定。在生产环境,请求压力是不均匀的,呈波浪特性,因此为了更好地模拟生产环境,稳定性测试也应不均匀地对系统施加压力。
TPS
吞吐量 = (1000 / 响应时间ms) * 并发数
性能测试目标: 要把这条曲线测出来。
性能测试:a~b 并发数增加,TPS快速增加。
负载测试:b~c 并发数增加,TPS增长速度变小。
压力测试:c~d 并发数增加,TPS反而开始下降。
让系统在b点位置左右运行;如果在c点位置左右,那么就很容易系统奔溃了。
到底是在b点位置的左还是右呢?这要依赖于投资多少钱的机器。如果要省钱,那么在b点靠右的位置,安全性会低一点,到达c点比较危险。如果不差钱,那么可以多加机器(比如银行),那么就在b点靠左的位置。
响应时间
通常瓶颈点在于磁盘和内存数。
吞吐量 = (1000 / 响应时间ms) * 并发数
系统响应时间和吞吐量如何变化:
[a, b) 区间,响应时间变化不大,吞吐量在持续增大(根据吞吐量公式),因为硬件能够接收这么多流量。
[b, c) 区间,响应时间逐渐增大,吞吐量在持续增大,增速较[a, b)变缓慢,因为硬件已经超负荷。
[c, d) 区间,响应时间快速增大,吞吐量在缓慢增加,最终达到最高值,因为最终系统崩溃。
题目二:编写测试工具
用你熟悉的编程语言写一个 web 性能压测工具,输入参数:URL,请求总次数,并发数。输出参数:平均响应时间,95% 响应时间。用这个测试工具以 10 并发、100 次请求压测 www.baidu.com。
版权声明: 本文为 InfoQ 作者【John(易筋)】的原创文章。
原文链接:【http://xie.infoq.cn/article/3e32f5eb699e11cce8a65ed82】。
本文遵守【CC-BY 4.0】协议,转载请保留原文出处及本版权声明。
评论