在做性能测试的时候,经常听到各路大佬说要模拟真实环境,那怎么模拟真实的生产环境呢?最好的办法就是统计生产环境的业务,抓取各个业务的比例,然后称之为业务模型,并按照这个业务模型,进行压测,得到 TPS 曲线。
但是经过我实际操作下来,发现这个非常难统计,因为业务每时每刻都在变化,比例也在变化。假设我们按照小时来统计,共 ABC 三个业务,那么有下图
0-9:暂未统计。。忽略
9~10:A-10 万 B-20 万 C-30 万 比例为 1:2:3
10~11: A-30 万 B-10 万 A-20 万 比例为 3:1:2
11~24:暂未统计。。忽略
那么在做性能测试的时候,如果按照小时来统计,一天 24 个小时,就有 24 个场景,一个月 30 天,就有 720 个场景,,这怎么测得完?
可能也有人说,从中抽象出几个比较有代表性的比例,但是即便这样,也是一个不小的工作量,场景太多了。。
而且这是按照小时来统计的,并不能 100% 模拟线上情况
我甚至开始怀疑这么做有啥用?线上都已经出来比例了,你再统计出来在线下做一个性能压测,有啥用?直接看线上不就好了么?
难道统计出来是为了做性能回归用?
一脸懵逼中。。