LR集合点知识

来源:互联网 发布:joinquant 实时数据 编辑:程序博客网 时间:2024/06/05 11:09

集合点函数可以帮助我们生成有效可控的并发操作。虽然在Controller中多用户负载的Vuser是一起开始运行脚本的,但是由于计算机的串行处理机制,脚本的运行随着时间的推移,并不能完全达到同步。这个时候需要手动的方式让用户在统一时间点上进行操作来测试系统并发处理的能力,而集合点函数就能实现这个功能。集合点只需要在脚本中插入lr_rendezvous()函数即可。

lr_rendezvous("start");

引号内的就是集合点名称,当脚本在多用户运行的情况下,每次运行到这个函数都会查看一下集合点的策略来决定是等待还是继续运行。集合点的设置内容存放在场景的设置中,当脚本中有集合点函数时,场景中的集合点设置功能就可以访问。如下图

 

点击“集合”进入集合信息页面,见下图

 

点击“策略”按钮,进行策略设置,见下图

 

有三个策略:

策略一:是指当全部用户都运行到集合点函数才释放集合,让这100个用户并发运行后面的脚本;

策略二:是指当前时间如果只有10个用户在线,那么只需要这10个用户都运行到了集合点函数就释放集合,让这10个用户并发运行后面的脚本

策略三:当到达集合点的用户达到了自己设置的数量后就释放等待,并发运行后面的脚本。

注意可以在多个脚本上设置相同的集合点名称来实现多个脚本同事并发的效果。

 

集合点和事务:

集合点应该放在事务外,如果事务内存在集合点,那么虚拟用户在集合点等待的过程也会被算入事务时间,导致早进入集合点的用户的响应时间有误。