51Testing软件测试论坛

标题: analysis中的Maximum Running Vusers:没有达到我设定的用户数,为什么阿? [打印本页]

作者: dy    时间: 2004-12-3 15:33
标题: analysis中的Maximum Running Vusers:没有达到我设定的用户数,为什么阿?
analysis中的Maximum Running Vusers:没有达到我设定的用户数,为什么阿?
作者: dy    时间: 2004-12-3 15:36
我设置了100个vu,
Maximum Running Vusers:87
Total Throughput (bytes):根据generator中记录的字节数算出是100个用户的,那为什么Maximum Running Vusers数目不是我设定的100呢?
作者: dy    时间: 2004-12-6 13:47
自己顶
作者: dnapoweron    时间: 2004-12-6 15:11
有可能啊,如果你的用户还没有全部加上去的时后已经有用户下来了,那最大并发就没有你预设的那么多
作者: dy    时间: 2004-12-7 09:17
什么叫做用户没有全部加上去就已经有用户下来了?我设置了集合点阿,并发时应该一起阿,如100个用户,在running user图中应该在100位置处是一条直线才对阿,可是不是,从图中看不出来并发的迹象,在analysis中的running user图中用户数还没到100呢?但是从返回的字节数来看好像100个用户都执行了,怎么会事呢?
本人很迷惑,望高人指点
作者: darrendai    时间: 2004-12-7 11:45
标题: 我也遇过,请指点

作者: bsd3000    时间: 2004-12-7 13:18
设置了集合点后,还需要在方案中设置集合策略,如果在策略中设置的Vuser到达集合点后等待其它Vuser到达的时间间隔不够长,就有可能发生这种情况:已到达的Vuser在等待了规定的时间后要开始执行集合点以后的操作时还有一些Vuser没有到达。
作者: dy    时间: 2004-12-7 13:45
这个我注意到了,策略默认的时间是30秒,而我的100个用户执行完一遍操作才2秒
作者: dy    时间: 2004-12-7 13:47
所以我觉得不是这个问题,
楼上的说到侧策略,你知道策略中的三个选项有什么区别吗?
作者: bsd3000    时间: 2004-12-7 14:09
第一个是等所有的Vuser都到达集合点后再一块释放执行以后的操作;
第二个是等所有正在运行的Vuser都到达再释放,也就是说如果运行中的Vuser都到达了,且过了规定的等待时间,就开始释放,不管是否还有正初始化的Vuser;
第三个规定了有多少个Vuser到达集合点就可以释放;

不知楼主是采取何种方法加载Vuser?在执行完方案后方案中是否有失败的事务?我曾遇到过这种情况,一次性加载所有Vuser时有的Vuser是初始化了几次才成功的,则到达集合点的时间就有可能变长。
作者: dy    时间: 2004-12-7 16:14
哦,谢谢bsd3000的解答
系统默认的是第二个吧,我就是用的那个,但我检查集合点时,没有出现timeout的显示阿,按照你的解释,如果我用第二个应该是timeout才对把?
也没有失败的事务,能问一下失败意味着什么吗?什么叫做失败?在什么情况下的事务定义为失败?
作者: bsd3000    时间: 2004-12-7 16:27
不知你说的“Time Out”是指什么?
我的意思是,有的Vuser在初始化时因为某一条语句的操作无法完成而导致Init事务失败,而有时失败之后还可以再一次初始化,从而这个Vuser最终也会运行通过。

大概你的不是这种情况吧。
作者: dy    时间: 2004-12-7 17:21
你是说失败的情况一般都是init失败,是把?
作者: dy    时间: 2004-12-7 17:37
我说的timeout是集合点中看到的
controller->scenario->rendezvous看status imformation
policy选择的第二个,当所有running中的用户的100%到达集合点时释放所有用户
时限设为30秒,(超过30秒时如果running中的用户的100%没有都到达,就释放现有到达的用户,这时就算timeout,)
作者: dy    时间: 2004-12-9 08:47
顶一下,希望有人回答
作者: rantisong    时间: 2004-12-9 08:58
关注ing.... UP
作者: gubinger    时间: 2004-12-9 09:43
timeout 表示你的机器已经不能支持更多的VU了!,如果要增加,提高你的电脑配置看看,如果是被测机配置不购,证明需要升级了。可以试一试
作者: bsd3000    时间: 2004-12-9 12:55
楼主在这说的“TimeOut”是关于集合点的,应该不是gubinger所说的那个意思
不过gubinger说的这种情况倒不是没可能;

希望楼主能把你的方案运行情况描述详细一些,有没有错误信息?方案运行时Vuser的日志如何?相关的一些信息都需要自己先好好分析一下,看看可能的原因有哪些。就你目前描述的好像看不出什么具体问题来。
作者: dy    时间: 2004-12-9 14:15
error是:

Action.c(17): Error : Timeout expired while trying to connect. Error code : 9017.

Action.c(17): Error : callConnect - Connection refused. Error code : 10061.
winsock error 10061

gubinger的timeout又是指的什么呢?
我的vuer log只是在有错误信息时才返回
察看到有个别的日志中写有某次迭代时出现上述错误
作者: dy    时间: 2004-12-9 14:18
请bsd3000帮我分析分析原因
看看是真象gubinge说的,是我的机器原因,还是被测程序的瓶紧出现了
谢谢
作者: bsd3000    时间: 2004-12-9 15:07
错误信息中的“Connection refused”是指连接服务器被拒绝吗?什么样的服务?测的是Web应用程序吗?所录制的操作是什么?
出错的语句是在设集合点处吗?
如果是的话,可能是因为同时太多人连接服务器而导致连接请求失败。
可以看一下服务器是不是在这方面做了什么限制,可不可以修改。
作者: bsd3000    时间: 2004-12-9 15:13
如果要在日志中获得更多信息,可以在脚本的运行时设置中做一下更改
作者: dy    时间: 2004-12-9 15:41
出错的语句是在设集合点处吗?------这个我不明白,不知道怎么回答?怎样才知道语句措在哪里,难道可以定位吗?
我录制的是winsock,使用局域网连接终端和服务端
服务器没有限制人数阿
100个用户一次(不循环)好像没事,一循环就有,而且是有时候出现,有时候很正常
作者: bsd3000    时间: 2004-12-9 16:07
Action.c(17): Error : Timeout expired while trying to connect. Error code : 9017

错误信息里不是指明了出错语句是Action.c(17)吗,在脚本中使用右键菜单中的“Go to Line”可以定位到相应的代码行。

“100个用户一次(不循环)好像没事,一循环就有,而且是有时候出现,有时候很正常”,
优化脚本看看可不可以。感觉是服务器或者哪个相关的地方的性能问题。具体定位还得你自己分析了,需要仔细了解一下你所测程序和所录制操作的内部运行机制,以及你的测试环境。
作者: dy    时间: 2004-12-10 10:04
每次都是在lrs_create_socket语句地方出现上述问题
作者: zhengaiqi    时间: 2013-5-24 11:36
看看答案




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2