51Testing软件测试论坛

标题: loadrunner并发10以内的没问题,但是10以上就服务器无响应了,求助 [打印本页]

作者: lansanniu    时间: 2015-4-21 11:03
标题: loadrunner并发10以内的没问题,但是10以上就服务器无响应了,求助

我把其中的{C_PORT_CODE}参数化了,它是一个类似100到900的号码,共有800个值,我用了for循环,每达到10个request才并行提交一次。
{C_PORT_CODE}的设置如下
    select next row:Unique;
    update value on:Each occurrence;
    when out of values:continue with last value(abort vuser也尝试过)
    allocate 20 values for each vuser
我设置40个vuser,迭代一次,每个vuser分到20个值,一共800个值,迭代一次刚刚好。

问题是,我设置增量为7或8或11个vuser开始并发跑,每15秒增加一次,都是没问题。但是当我设置为10的时候,就不行了,服务器完全没反应,然后运行中的vuser就一直不断累积
直到40个,然后就什么也没反应了。这时候手动在客户端上想操作,发现已经无法和服务器连接,无响应。

或者时间间隔由15秒减小为10秒,第一波vuser没跑完,第二波就压上来,累积超过10个,也会出现上述现象。
这样我就没法测并发50或100等数量的情况了。求助


Action()
{
        int k;

        //并行提交----------------------------------------------start
        web_concurrent_start(NULL);

        //k为循环做组合数
        for(k=1;k<=10;k++){

                web_add_header("USER", "ADMIN");
                web_custom_request("baseoper_4",
                        "URL=http://192.168.2.2:8080/PLATFORM/baseoper",
                        "Method=POST",
                        "Resource=0",
                        "RecContentType=text/html",
                        "Referer=",
                        "Mode=HTTP",
                        "EncType=application/x-java-serialized-object",
                        //我把这个参数化了{C_PORT_CODE}
                        "Body={...略..."C_PORT_CODE":"{C_PORT_CODE}"...略...}",
                        LAST);
                       
        }
        //并行提交----------------------------------------------end
        web_concurrent_end(NULL);

        return 0;

}


作者: 授客    时间: 2015-4-21 12:22
似乎没把问题说清楚,描述似乎也和代码不符。。。
作者: lansanniu    时间: 2015-4-21 12:31
楼上的可能我太急了
我现在想做50个vuser并发,但是达到10个以上以后,就卡住了,服务器没响应了。
作者: saharaqs    时间: 2015-4-21 12:43
1个用户10个请求,10个用户就是100个请求并发了,是不是压力太大了啊。


作者: lansanniu    时间: 2015-4-21 13:02
saharaqs   我折腾一天了,,,我是慢慢加到9个,都可以的。
但这个场景只能是第一拨9个,执行完了,第二拨的9个才压上来,然后总的在跑的vuser数一直都不会超过10个,很轻松跑完了。

如果间隔时间稍短一些,造成第一拨没执行完,第二拨就压上来,总数超过10几的话,也会无响应,我要手动重启服务端。

如果直接一拨压10个,那马上就无响应了,卡死在那里。   这我没法测同时有几十个在跑的场景了啊   头痛死了。
9和10   就差了一个用户而已啊
作者: saharaqs    时间: 2015-4-21 13:46
是不是服务器有连接数的限制之类的啊。

在卡死的时候看看系统后台日志,有没有报错什么的
作者: lansanniu    时间: 2015-4-21 14:37
saharaqs  谢谢。应该是你说的那样。
我目前9用户*10请求=90请求一次,可以通过
我再尝试10用户*9请求=90请求;  10用户*5请求=50请求,都卡死
说明服务器不是限制并发请求数,而是限制用户连接数。




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