如何模拟用户操作
- 按进程方式模拟虚拟用户:一般来说,一个进程模拟一个用户,有多少个用户就有多少个进程,而每个进程会占用一定的资源,所以负载生成器只能生成较少的虚拟用户。缺点:占资源,优点:稳定
- 按照线程方式模拟虚拟用户,每个虚拟用户由一个线程来完成,每30-50个线程共享一个进程。优点:节省内存空间,缺点:不稳定
- 同一个时间所产生的虚拟用户数,就是我们常说的同时在线的用户数,并发连接数,用户数越多,负载越大。
- 测试请求数据量越大,负载也越大
- 操作速度,也就是思考时间
(负载)并发用户数=并发连接数+请求数据量+思考时间
如何有效地模拟加载过程
- 如何启动负载

启动周期(Ramp-up Period)
思考时间=启动周期/线程数=1/1=1s

最常见的加载模式:
- 一次加载。一次性加载某个数量的用户,在预定的时间段内持续运行。获取某种确定负载下的性能指标数据,采用这种加载模式
- 递增(递减)加载。用户有规律的逐渐增加,每秒或每几秒增加一些新用户,交错上升(ramp-up 模式)。在容量测试、破坏性压力测试(发现性能拐点、确定负载极限)中,一般选用这种加载模式
- 高低突变加载。某个时间用户数量很大,突然降到很低,然后,过一段时间,又突然加到很高,往复多次。借助这种负载方式的测试,容易发现资源释放、内存泄漏等问题(峰谷测试)
- 随机加载方式,由随机算法自动生成某个数量范围内变化的,动态的负载,这种方式可能是和实际情况最为接近的一种负载方式,虽然不容易模拟系统运行出现的瞬时高峰期,但可以模拟处在比较长时间的高位运行过程。
如何实时准确地控制加载
某个特定条件下准确地做某种操作,要如何实现呢?
这时就需要引入同步点,也称集合点,就是当足够的虚拟用户达到同步点才执行所设定的动作。

浙公网安备 33010602011771号