Hello, Sorry I read your mail too fast. My questions: - Where did you put the Groovy script code (in text area or in file )?
Could you try it with JMeter nightly build ? Thanks Regards Philippe On Mon, Jan 14, 2013 at 12:37 PM, Philippe Mouawad < [email protected]> wrote: > Hello, > I would be very interested in the Test Plan you used. > Which version did you use ? Nightly or 2.8 ? > If 2.8, where did you put the script code (in text or in file )? > > The tests I made (where the script part was not very consequent) showed > JSR223 + GROOVY + CACHING as the best option and showed better results than > Beanshell. > > I am not surprised about javascript not being the good one but other > results surprise me a bit. > > Regards > Philippe > > > > > > > On Mon, Jan 14, 2013 at 11:16 AM, He Yin(测试部_贺寅) <[email protected]>wrote: > >> Sorry, I'm not used to writing in plain text mode and missed my signature~ >> >> Best regards, >> Joey He >> >> >Hello, >> > In another thread, I noticed Philippe mentioned that " JSR223 Samplers >> + Groovy + Caching" is a better choice then Beanshell. Since I used a lot >> of Beanshell in my scripts and never pay attention to it, I decided to make >> an investigation of this issue. >> > I simplified one of my beanshell script, rewrited it into groovy and >> rhino and put them into script-samplers instead of pre-processors. >> >The result turned out that >> >1) Beanshell is better than other solutions >> >2) Groovy and javascript will cause some gc problems. >> >3) Groovy is the slowest. >> >3) BSF and JSR223 seems that waste some cpu time on their framework. >> > >> >Am I doing something wrong? >> > >> >(Thread:10, Loop 500) >> >Label Samples Average Median 90% Min Max Error% >> Throughput KB/sec GC occurs >> >JSR223-groovy 5000 59 39 119 6 3077 0 >> 145.2137546 0 1~2 >> >JSR223-rhino 5000 2 1 2 0 314 0 >> 851.9338899 0 frequently >> >BeanShell Sampler 5000 1 1 2 0 402 0 >> 1068.832835 0 0 >> >BSF-beanshell 5000 33 27 63 3 328 0 >> 270.6506441 0 0 >> >BSF-javascript 5000 20 6 44 1 640 0 >> 324.7174958 12.68427718 frequently >> > >> >Environments: JMeter 2.8, >> >Uncomment " jsr223.compiled_scripts_cache_size" in jmeter.properties >> Groovy version: groovy-all-2.0.6 >> >JVM_OPTS: >> > set HEAP=-Xms512m -Xmx512m >> > set NEW=-XX:NewSize=128m -XX:MaxNewSize=128m >> > set SURVIVOR=-XX:SurvivorRatio=8 -XX:TargetSurvivorRatio=50% >> > set TENURING=-XX:MaxTenuringThreshold=2 >> > set RMIGC=-Dsun.rmi.dgc.client.gcInterval=600000 >> -Dsun.rmi.dgc.server.gcInterval=600000 >> > set PERM=-XX:PermSize=64m -XX:MaxPermSize=64m >> > >> >Script for Beanshell and groovy: >> >for (int i=0;i<10;i++){ >> > line="1027448,1".split(","); >> > pid=line[0]; >> > mid=line[1]; >> > vars.put("pid"+i,pid); >> > vars.put("mid"+i,mid); >> >} >> >cartParam=""; >> >for (int i=0;i<10;i++){ >> > pid=vars.get("pid"+i); >> > mid=vars.get("mid"+i); >> > param=mid+"_"+pid+"_"+"0_0_1=1"; >> > if (cartParam=="") >> > cartParam=param; >> > else >> > cartParam+=","+param; >> >} >> >vars.put("cartParam",cartParam); >> > >> >Script for rhino and javascript: >> >for (var i=0;i<10;i++){ >> > line="1027448,1".split(","); >> > pid=line[0]; >> > mid=line[1]; >> > vars.put("pid"+i,pid); >> > vars.put("mid"+i,mid); >> >} >> >var cartParam=""; >> >for (var i=0;i<10;i++){ >> > pid=vars.get("pid"+i); >> > mid=vars.get("mid"+i); >> > param=mid+"_"+pid+"_"+"0_0_1=1"; >> > if (cartParam=="") >> > cartParam=param; >> > else >> > cartParam+=","+param; >> >} >> >vars.put("cartParam",cartParam); >> > >> >> > > > -- > Cordialement. > Philippe Mouawad. > > > -- Cordialement. Philippe Mouawad.
