本文我们再一起梳理一下全链路压测的测试环节,以及每个环节都应该做哪些工作。
首先要进行压测预研,分析压测的范围、目标和环境。然后要进行压测准备,业务的功能要明确,业务数据要满足生产的数据量,压测环境要真实,监控部署要到位,监控的指标要明确,响应时间等各方面的要求都要有,以上这些内容有了,压测方案也就出来了。
然后开始模拟测试,我们要做常规的并发压测,高数据的容量测试,还有稳定性测试,这些都是最基本的。还有像我们刚才说的,出现突发性的疫情的情况,各个省份都有自己的健康码,这个时候流量就像海浪一样,就需要做浪涌测试,一下子并发很高,还是梯队性的,像波浪一样,一浪接一浪。用像浪涌一样的冲击性的压测,去模拟这种场景。
在模拟的过程中,发现硬件的服务器不够用,就需要做非功能压测,我们在集群部署扩容的过程中,4台服务器可以支持500用户的并发,5台可以支撑多少?临时的突发事件中,非功能性的性能测试就解决这个问题。在测试的过程中就可以把这些问题提前发现,提前解决。这样运维成本就会低了。
这些都做完之后,因为我们是在生产环境下去压测的,上线之后日志和数据都还在,因为我们测试是模拟高并发的情况,磁盘空间肯定是不够的,所以测试完成之后,一定要做数据清理,还原到最初的状态。否则就容易明明测试的时候没问题,上线的时候却出问题了。
清理完成后我们要编写压测报告,评估指标是否满足要求,不满足的情况下我们应该怎么做。
接下来的文章会继续为大家介绍全链路压测的方式以及全链路压测过程中会用到的工具,敬请大家继续关注。