集合点用于让多名虚拟用户在脚本中的同一位置等待,满足人数或超时条件后再继续执行,从而形成集中请求。它适合验证登录、下单等瞬时高并发业务,但配置不一致时,目标请求仍可能分散发送。
一、LoadRunner集合点怎么设置
集合点需要在VuGen脚本和Controller场景中配合设置。
1、在目标请求前插入集合点
C语言脚本通常使用lr_rendezvous。该函数只能放在Action部分,不能写入vuser_init或vuser_end;虚拟用户执行到这里后会暂停,等待Controller放行。
①在VuGen中找到需要制造并发的业务请求,将光标放在该请求之前。
②点击【设计】→【插入脚本步骤】→【集合点】,填写简短名称。
③将事务开始函数放在集合点之后,避免等待时间被计入目标事务。
多个脚本共同参与时,应使用相同名称,并保证都能执行到该位置。
2、在Controller中设置释放策略
集合点只在手动场景的按组模式中有效,百分比模式下不会生效,目标导向场景也会禁用集合点。
①创建手动场景,将脚本加入场景,并确认采用按组模式。
②点击【场景】→【集合点】,核对名称、关联脚本和参与用户。
③点击【策略】,按全部用户比例、当前运行用户比例或固定人数设置释放条件。
需要验证固定并发时,通常选择达到指定人数后释放。相邻用户到达超时默认为30秒,每有新用户到达都会重新计时;超时后,已到达用户会被放行。
二、LoadRunner集合点未按预期触发并发如何调整
运行用户数不等于集合点实际并发数。只有完成前置步骤并在超时前到达的参与用户,才会被同批释放。
1、实际到达人数不足
部分用户可能仍在初始化,也可能因参数、关联、登录失败或业务判断提前退出。
①运行场景时打开【场景】→【集合点】,查看已到达人数、参与总数和释放原因。
②检查未到达用户的日志,确认是否停在初始化、取数、关联提取或错误分支。
③先修复脚本失败,再调整预热时间或集合人数,不要直接降低人数掩盖问题。
2、场景模式或参与范围错误
集合点被禁用、部分用户未参与、脚本未更新,都会造成预期人数与实际人数不一致。
①确认当前使用按组模式,并且不是目标导向场景。
②进入【集合点信息】,检查集合点和目标虚拟用户是否启用。
③修改过名称或位置后,重新加载脚本,避免场景继续使用旧版本。
3、集合点离目标请求过远
集合点只能保证用户同时离开等待位置,无法保证经过多段请求、随机等待和条件分支后仍同时到达服务器。
①把集合点移动到目标请求前一条稳定语句附近。
②删除两者之间不必要的思考时间、随机等待和非关键请求。
③确保释放后的用户执行相同路径,不同业务分支应分别设置集合点。
4、超时设置不合理
释放原因显示超时时,说明等待期间没有足够用户继续到达。
①核对异常批次的释放原因和到达人数。
②前置步骤耗时差异较大时,可适当延长超时并增加预热时间。
③若始终有人无法到达,应修复脚本或重新确定参与人数,不宜无限增加超时。
三、集合点设置后如何验证并发效果
集合点释放成功不代表目标请求已经形成有效峰值。验证时应查看释放记录、事务分布和服务器监控。
1、记录释放状态
需要区分正常到达、超时、禁用和手动释放时,可使用lr_rendezvous_ex。它可返回释放状态,便于定位原因。
①在小规模验证脚本中使用lr_rendezvous_ex保存返回值。
②输出虚拟用户编号、集合点名称和返回状态。
③确认主要用户正常到达后,再逐步扩大规模。
2、核对服务器峰值
①在分析结果中放大目标事务附近的时间轴,观察事务通过量是否形成集中峰值。
②对照应用服务器、数据库和Web服务器监控,检查请求量、连接数和资源消耗是否同步上升。
③先用少量用户验证,再增加到目标规模,避免把负载机瓶颈、网络延迟或服务端限流误判为集合点失效。
总结
处理“LoadRunner集合点怎么设置LoadRunner集合点未按预期触发并发如何调整”时,应同时检查脚本位置、场景模式、参与用户和释放策略。集合点要紧贴目标请求,相关用户必须稳定完成前置步骤,超时也应符合实际业务耗时。最后结合释放原因、事务时间轴和服务器监控验证请求峰值,才能确认瞬时并发是否有效。希望本文对大家有所帮助,如需进一步了解,可联系咨询。
