i running grinder test post uri 10 different json bodies. response times given grinder not proper.individual json body tests giving reasonable response time though 10 script with 10 different json bodies giving high response time , low tps. using 1 agent 5 worker processes , 15 threads.can me figure out problem might be?
the script using :-
`from net.grinder.script.grinder import grinder net.grinder.script import test net.grinder.plugin.http import httprequest httpclient import nvpair java.io import fileinputstream test1 = test(1, "request resource") request1 = httprequest() #response1 = httpresponse() test1.record(request1) log = grinder.logger.info class testrunner: def __call__(self): #request1.setdatafromfile("reqbody.txt") payload1 = fileinputstream("/home/ubuntu/grinder-3.11/scripts/req.txt") payload2 = fileinputstream("/home/ubuntu/grinder-3.11/scripts/req2.txt") payload3 = fileinputstream("/home/ubuntu/grinder-3.11/scripts/req3.txt") payload4 = fileinputstream("/home/ubuntu/grinder-3.11/scripts/req4.txt") payload5 = fileinputstream("/home/ubuntu/grinder-3.11/scripts/req5.txt") payload6 = fileinputstream("/home/ubuntu/grinder-3.11/scripts/req6.txt") payload7 = fileinputstream("/home/ubuntu/grinder-3.11/scripts/req7.txt") payload8 = fileinputstream("/home/ubuntu/grinder-3.11/scripts/req8.txt") payload9 = fileinputstream("/home/ubuntu/grinder-3.11/scripts/req9.txt") payload10 = fileinputstream("/home/ubuntu/grinder-3.11/scripts/req10.txt") headerspost = [nvpair('content-type', ' application/json')] #request1.setheaders(headerspost) #request1.setheaders myload = [payload1, payload2, payload3, payload4, payload5, payload6, payload7, payload8, payload9, payload10] f in myload: result1 = request1.post("http://xx.xx.xx.xx:8080/api/usblocks/org101/1/n/",f,headerspost) log(result1.tostring())`
first step run 1 thread 1 process , 1 agent . hope run properly.
it looks since loop used scripts going run each , every thread. think want /what should done each thread should sending 1 request .
you can move request out global method , take random number grinder.threadno , use return script executed . demands remove loop since can control number of times script executed or leave running duration .
running 10 threads in parallel number start can see how many requests getting accepted.
Comments
Post a Comment