关于并发用户与集合点的问题
无论是并发还是集合点都是对于客户端而言,通过网络,各服务器的消耗,到达服务器还不是严格意义的并发,加上集合点一般情况下响应时间会变长,导致在验收的时候对开发方不利,如果是调优,最好增加集合点[ 本帖最后由 renquande 于 2009-12-17 16:29 编辑 ] 本来我以为我明白了,看了帖子我糊涂了,现在怀疑我前几天的测试都做错了,已经彻底不明白了。
楼上的几位大大讨论的偏重理论,少有实践例子,我就把前几天做的一个脚本拿出来,大家帮我分析一下吧。
脚本描述:
action(
login({user},{passwd});
logout([user},{passwd});
) //action部分未设置迭代,参数化数据量假设无穷大,不考虑参数化失败的可能。
场景一描述:
运行50个用户,场景开始执行时,每5秒增加2个VU,达到50个用户后,继续运行3分钟,3分钟后,每2秒停止5个VU,直至所有VU停止。
场景二描述:
对脚本进行修改,在login()前增加集合点,集合点设置数为50,当所有(50个)VU到达后释放。
运行50个用户,场景开始便初始化所有VU,运行3分钟,3分钟后,每2秒停止5个VU。
问题1:
在场景一中,所有50用户都运行起来的3分钟时间里,LR对服务器造成的压力,可否相当于场景二中同步点释放时造成的压力??
问题2:
场景一中VU递增的过程中,假设当前运行的VU为30个,是否可认为当前服务器承受着30用户并发的压力????
我的问题问完了,还有其他不明白的,我就不在这问了。今天这帖子搞得我觉得自己都有点蒙了。希望楼上的大大们给予解答。 个人观点,仅供参考:
问题1:
不一定,因为我们增加集合点的目的是让这个事务,也就是要操作的这个点的瞬间压力,肯定比不加集合点时对服务器的压力大,而且在50VU运行3分钟里,由于网络延迟、中间件、服务器等等,不可能都在同一个事务点并发,充其量就是对这个应用系统在并发,所以这种是否相等、谁大谁小无法判定
问题2:
我觉着不是严格意义的30VU并发,因为并发操作的定义是在同一时间内做同样的事,所以这种并发量应该在30VU同时在线和30VU并发之间
欢迎各位发表见解,批评指正 :( 插入集合点的并发,比如50个用户,当49个用户到达集合点时,肯定不会并发,必须等到50个到了后一起并发,所以,楼上有人说受诸多因素影响,说法不准确,既然设置了集合,肯定到集合点这块进行触发!!
补充下,设置事务的目的目的是为了加集合点,类似oracle设置事务的目的是为了加锁道理一样。。
谢谢!!
[ 本帖最后由 liulangchina 于 2010-2-4 10:20 编辑 ] 学习了 还是有点不太明白啊~再看看~