caozhongchun 发表于 2010-4-27 15:46:33

通过web_reg_save_garam得到的数组,怎么用于多用户并发?

通过web_reg_save_garam函数获得100个值。到数组temp中。
如何象用file方式参数化一样,在controller中让每个用户分别去取temp的值。并且每个用户取值是唯一的。然后去并发发出请求。

请教大师!

ziheng198688 发表于 2010-4-27 16:01:33

楼主可以贴出具体的web_reg_save_param的内容吗?比如左右边界是什么。我想应该没有必要在解析之后存到数组,解析了之后直接在接下来的脚本中使用应该就可以了,不过关键要看左右边界和左边界的次序,还有可能要做相应的关联。希望楼主说的具体一些,或者将脚本共享出来。

skyzhu 发表于 2010-4-27 16:06:38

web_reg_save_param 如果一下拿100个
那么controller里跑的时候每个用户都会拿到100个。。。
这个情况应该在取的时候就只要1个 (web_reg_save_param   ORD 参数)
只要把ORD 参数化了就可以了

caozhongchun 发表于 2010-4-27 16:08:06

web_reg_save_param("orgid",
                "LB/BIN/DIG=link('",
                "RB/BIN/DIG=','1020'",
                "Ord=ALL",
                "NotFound=ERROR",
                "Search=Body",
                LAST);


        web_url("organizationAction.shtml_5",
                "URL=http://localhost:8088/organizationAction.shtml?action=loadOrganizationAdminTree&openNode=1020",
                "Resource=0",
                "RecContentType=text/html",
                "Referer=http://localhost:8088//organizationAdminAction.shtml",
                "Snapshot=t19.inf",
                "Mode=HTML",
                EXTRARES,
                "URL=../image/dTree/minus.gif", "Referer=http://localhost:8088/organizationAction.shtml?action=loadOrganizationAdminTree&openNode=1020", ENDITEM,
                LAST);


        web_url("organizationAction.shtml_6",
                "URL=http://localhost:8088/organizationAction.shtml?action=loadOrganization&organizationID={orgid_1}",
                "Resource=0",
                "RecContentType=text/html",
                "Referer=http://localhost:8088/organizationAdminAction.shtml",
                "Snapshot=t20.inf",
                "Mode=HTML",
                LAST);


获得的orgid,要用于红色标识的那个值。

谢谢!

caozhongchun 发表于 2010-4-27 16:17:33

我想要每个用户取值都不一样,如果只取一个值的话那每个用户取值只能一样了。

skyzhu 发表于 2010-4-27 16:24:55

只要取一个就可以了,每个用需要取的不一样的话 就把web_reg_save_param函数中的ORD参数根据 vuser id做参数化
否则没办法做到唯一,脚本vuser之间不通的,除非事先放进file里做参数化

ziheng198688 发表于 2010-4-27 17:21:55

楼主是想每个用户去不同值还是每个循环选不同的值啊,如果是第一种情况,楼主可以新建一个参数NewParam,参数类型选择Vuser ID,如果是第二种情况参数类型选择Iteration Number,然后用{NewParam}代替脚本中的ALL

web_reg_save_param("orgid",
                "LB/BIN/DIG=link('",
                "RB/BIN/DIG=','1020'",
                "Ord={NewParam}",
                "NotFound=ERROR",
                "Search=Body",
                LAST);

caozhongchun 发表于 2010-4-27 18:12:23

谢谢,那请问取值的时候怎么写呢? 参数属性怎么设置呢?

caozhongchun 发表于 2010-4-27 18:16:43

同时,为什么ord中用all 就能把数据匹配出来我用1 就匹配不出来呢?

我用下面的语句打印获得的参数:
       i=atoi( lr_eval_string("{orgid_count}") );
        lr_error_message("The count of orgid_account is %d", i);
        for (j=1;j<=i;j++)
        {
    sprintf( temp,"{orgid_%d}\0",j );
        lr_error_message("{orgid_%d} is %s", j, lr_eval_string(temp));
        }

云层 发表于 2010-4-27 18:26:45

我是这样看到这个问题的,我能明白你想实现每个用户做不同的事情
那么
1.如果数据固定你可以通过参数化实现
2.如果数据是动态的那么你在关联的时候会得到该列表的所有数据,但是每个用户都会关联到,这样就会很麻烦,你可以通过用户vuser_id来尝试解决,但是这里需要确保你的虚拟用户数,少于等于关联到的记录数
3.直接去数据库抓所有记录,然后分配

ps.很多事情其实你不用想那么多,尽量简化就行了

msnshow 发表于 2010-4-27 21:20:52

回复 9# 的帖子

用 order=1 不就只有一个值么,没有_count 属性可以用吧

caozhongchun 发表于 2010-4-28 13:56:53

谢谢,各位的回答!
我的脚本是完成用户 新建 编辑 删除的功能。
先是每个用户去新建一条记录,比如100个用户新建,新建了100条记录,然后再让每个用户去对自己的记录进行编辑和删除。 程序的代码在编辑和删除时是以记录的id为标识去请求服务的。这个id是动态生成的。

PrefTest 发表于 2010-4-29 11:25:01

用Web_reg_save_pram关联取到参数数组,用lr_whoami取到VUserID,再使用lr_paramarr_idx取参数数组的其中一个值(根据VUserID取)

cyranoxing 发表于 2010-5-7 16:01:31

如果虚拟用户数小于你关联得到的count,那可以依赖VUserID保证每个vuser取得不同的ord数值,不过前提是你的vuserid取值要符合ORD取值的要求,比如关联到100个值,那vuserid就不能有大于100的;另一种情况,如果虚拟用户数大于你关联得到的count,我建议使用随即方式在你获取的关联数组中随即取值。

sc_zk2008 发表于 2010-5-10 15:21:06

可以直接数据库中抓这个id的,然后在参数化
页: [1]
查看完整版本: 通过web_reg_save_garam得到的数组,怎么用于多用户并发?