RE: [Grinder-use] Can Grinder be made to Imitate the browser behaviour
Distributed load testing framework - Java, Jython, or Clojure scripts.
Brought to you by:
philipa
|
From: <joh...@st...> - 2006-04-25 14:14:33
|
I did a test with the IE 6.028: I surfed on google.de. entering the page th= e first time the google images (req102-105) have been loaded by page1. After that I surfed to the image-search (GET imghp) and than again back to = the web-search (GET webhp) and so on. My intension was that the Images shoud not be retrieved again, because they= have been cached. The script below shows that they have no more beend requ= ested. Is this because the IE Browser itsself decided to do no GET Request = to the server for the images? And therefor the recorder did NOT record a se= cond time the request of the images (hp0.gif,hp1.gif,hp2.gif,hp3.gif)? I thought I would find the 304 response from the server, when I do a test l= ike that. Where could I get that one? jo The script recorded by the http proxy looks like (only a part): def page1(self): """GET / (requests 101-105).""" result =3D request101.GET('/') grinder.sleep(60) request102.GET('/images/hp0.gif') request103.GET('/images/hp1.gif') grinder.sleep(30) request104.GET('/images/hp2.gif') request105.GET('/images/hp3.gif') return result def page2(self): """GET imghp (requests 201-202).""" self.token_hl =3D \ 'de' self.token_tab =3D \ 'wi' self.token_q =3D \ '' result =3D request201.GET('/imghp' + '?hl=3D' + self.token_hl + '&tab=3D' + self.token_tab + '&q=3D' + self.token_q) grinder.sleep(20) request202.GET('/intl/de_ALL/images/images_hp.gif') return result def page3(self): """GET webhp (request 301).""" self.token_tab =3D \ 'iw' result =3D request301.GET('/webhp' + '?hl=3D' + self.token_hl + '&tab=3D' + self.token_tab + '&q=3D' + self.token_q) return result def page4(self): """GET imghp (request 401).""" self.token_tab =3D \ 'wi' result =3D request401.GET('/imghp' + '?hl=3D' + self.token_hl + '&tab=3D' + self.token_tab + '&q=3D' + self.token_q) return result def page5(self): """GET webhp (request 501).""" self.token_tab =3D \ 'iw' result =3D request501.GET('/webhp' + '?hl=3D' + self.token_hl + '&tab=3D' + self.token_tab + '&q=3D' + self.token_q) return result ---------- Original Message ---------------------------------- From: "Philip Aston" <pa...@be...> Date: Tue, 25 Apr 2006 14:06:21 +0100 >In the out file, you'll see the cached hit responses return a 304 status c= ode instead of a 200. You could also look at the data file, where you'll se= e the body length being small. > >- Phil > > -----Original Message----- > From: gri...@li... on behalf of johannes.becke= rt...@st... > Sent: Tue 25/04/2006 13:14 > To: gri...@li... > Cc: > Subject: RE: [Grinder-use] Can Grinder be made to Imitate the browser beh= aviour > > > > > thx for your quick repsonse! > > 2. How could I check if the caching simulation works well. Could i see th= at in the recorded script or in the out.log file? > > regards > jo > > >---------- Original Message ---------------------------------- > >From: "Philip Aston" <pa...@be...> > >Date: Tue, 25 Apr 2006 10:51:36 =F1=A9=80=94 > > > >>1. Yes. > >>2. Yes - the "If-Modified-Since" header is sent through to the server, = so it will return "not modified" responses if appropriate. > >>3. Correct. BEA WLS web apps will typically be set up to be balanced (e= ither with a WLS proxy plug in, or a h/w load balancer) across a cluster an= d made sticky based on the user HTTP session; not the IP address. (However,= a few customers do chose to balance using the IP address). > >> > >> -----Original Message----- > >> From: joh...@st... [mailto:johannes.becke= rt...@st...] > >> Sent: Tue 25/04/2006 10:13 > >> To: Philip Aston > >> Cc: > >> Subject: RE: [Grinder-use] Can Grinder be made to Imitate the bro= wser behaviour > >> > >> > >> > >> Regarding simulating a browser... (and my work about the grinder)= . > >> > >> 1.) Is it correct tha JS files are "only" downloaded and not exec= uted. > >> > >> 2.) Is it correct that caching is simulated by not downloading Ge= t requests, which are marked as cached during the TCPProxy recording? > >> > >> 3.) I think the grinder does currently not support IP Spoofing (M= aking each simulated sessions look like it's coming from a different IP add= ress) How does this affect the load test of a BEA webapplication server and= it's applications runnin on it? ( I believe there will not be any load bal= ancing between the server nodes, for request coming from the same agent. Is= that correct? Are there any other influences?) > >> > >> thx > >> Jo > >> > >> > >> > >> > >> > >> > >> > >> ---------- Original Message ---------------------------------- > >> From: "Philip Aston" <pa...@be...> > >> Date: Tue, 25 Apr 2006 07:43:22 =C3=B1=C2=A9=E2=82=AC=E2=80=9D > >> > >> >(For those who want the background: > >> >http://grinder.sourceforge.net/faq.html#browserVsgrinder) > >> > > >> >I doubt The Grinder will ever be precisely like a browser. There= 's a > >> >possibility in that in the future there may be some secondary th= reads > >> >associated with each worker thread that would pull images etc. d= own > >> >through one of several connections; this would let the times be = closer. > >> >The trick would be to do that without making the script horrendo= usly > >> >complex. > >> > > >> >- Phil > >> > > >> > > >> > _____ > >> > > >> >From: gri...@li... > >> >[mailto:gri...@li...] On Behalf Of dh= inakar k > >> >Sent: 25 April 2006 06:30 > >> >To: gri...@li... > >> >Subject: [Grinder-use] Can Grinder be made to Imitate the browse= r > >> >behaviour > >> > > >> > > >> >All, > >> > > >> >I am using Grinder for purposes like > >> >1.Blind Load Generation without caring for response times, > >> >2.For finding out pagewise response times, > >> >3.For Soak testing (Keep loading the server for long hours), > >> >4.Stress Testing (To keep increasing the concurrent users count = until > >> >the application breaks down) > >> > > >> >But when I used for '2.', I initially did not know that Grinder = did not > >> >create the "number of threads per page" like the browser does. I= > >> >understand that it is always going to be a variant. But before u= sing > >> >Grinder, if I use tools like IBM Page detailer and understand th= e > >> >browser and webserver behaviour for 1 user, can I do something i= n > >> >Grinder (like modifying the *.py script) so that Grinder creates= thread > >> >like the browser does for each page? > >> > > >> >Currently I cannot take the page wise response times shown by th= e > >> >Grinder Results as they are incorrect. > >> > > >> >I usually create a load of xx concurrent users and then manually= open > >> >the browser and go through the scenario and note down the page w= ise > >> >response times. But that also is not fully correct because the r= esponse > >> >times will differ when there is peak load, during idle/sleep tim= es etc. > >> >So I need to take many samples when the load is acting on the se= rver and > >> >take an average of them to get some what exact page wise respons= e times. > >> > > >> > > >> >Anyone have similar kind of issues? or have got some easy ways t= o get > >> >somewhat accurate (say, +/- 1 or 2 secs tolerance) pagewise resp= onse > >> >times? > >> > > >> >Thanks in advance, > >> > > >> >Dhinakar > >> >________________________________________________________________= _______ > >> >Notice: This email message, together with any attachments, may = contain > >> >information of BEA Systems, Inc., its subsidiaries and aff= iliated > >> >entities, that may be confidential, proprietary, copyrighted = and/or > >> >legally privileged, and is intended solely for the use of the in= dividual > >> >or entity named in this message. If you are not the intended rec= ipient, > >> >and have received this message in error, please immediately retu= rn this > >> >by email and then delete it. > >> > > >> > > >> > >> > >> > >> > >> > >> > >> > >>_______________________________________________________________________= > >>Notice: This email message, together with any attachments, may contain= > >>information of BEA Systems, Inc., its subsidiaries and affiliated= > >>entities, that may be confidential, proprietary, copyrighted and/or= > >>legally privileged, and is intended solely for the use of the individua= l > >>or entity named in this message. If you are not the intended recipient,= > >>and have received this message in error, please immediately return this= > >>by email and then delete it. > >> > > > > > > > > > > > > > > > > > > > > > > > > > > > ------------------------------------------------------- > Using Tomcat but need to do more? Need to support web services, security?= > Get stuff done quickly with pre-integrated technology to make your job ea= sier > Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronim= o > http://sel.as-us.falkag.net/sel?cmd=3Dk&kid=120709&bid&3057&dat=121642 > _______________________________________________ > Grinder-use mailing list > Gri...@li... > https://lists.sourceforge.net/lists/listinfo/grinder-use > > >_______________________________________________________________________ >Notice: This email message, together with any attachments, may contain >information of BEA Systems, Inc., its subsidiaries and affiliated >entities, that may be confidential, proprietary, copyrighted and/or >legally privileged, and is intended solely for the use of the individual >or entity named in this message. If you are not the intended recipient, >and have received this message in error, please immediately return this >by email and then delete it. >R=C8=A7=80=19=EB@=0E=8C'=96=86=9D=86=DBi=1A=B8=A7u=EA=C0=1A=B8=A7u=EA=C0= =86=DBi=B0 |