本篇文章,我们将主要介绍以下几方面的知识:
- 基准测试、负载测试、压力测试、容量测试
- 负载测试知识扩展:阶梯式加压
- 压力测试知识扩展:稳定性、破坏性压测
- 容量测试知识扩展:容量指标选取、容量规划、扩容手段;
几个名词文字比较接近,大家经常听到,但是很容易搞混,因此杨叔下面逐一给大家列出了解释:
基准测试:
- 在给系统施加较低压力时,查看系统的运行状况并记录相关数据作为基础参考。
- 比如1个线程访问时系统的性能情况。
负载测试:
- 测试系统在不同负载情况下的性能指标。
- 不关注稳定性,也就是说不关注长时间运行,只是得到不同负载下相关性能指标即可。
- 实际中我们常从比较小的负载开始,逐渐增加模拟用户的数量(增加负载), 观察不同负载下应用程序响应时间、所耗资源,直到超时或关键资源耗尽。
压力测试:
- 测试在一定的负载下系统长时间运行的稳定性。
- 尤其关注大业务量情况下长时间运行系统性能的变化(例如是否反应变慢、是否会内存泄漏导致系统逐渐崩溃、是否能恢复)。
- 压力测试是测试系统的限制和故障恢复能力。
容量测试:
- 测量系统的最大容量,为系统扩容,性能优化提供参考。
- 只要限定的某项指标达到最大可接受阈值或某项资源达到最大使用状态,即刻停止测试。(也就是我们常说的测试极限)。