You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@httpd.apache.org by John Cook <jc...@meatclown.com> on 2007/02/06 00:41:33 UTC

Issue with Flood's responsetemplate / resonsename?

Hello,

I'm currently having issues with flood that I can't currently replicate
with any of my other load / stress testing tools.
I'm running a version of flood checked out of the subversion repository
from mid January (1/16/07) on an Unbutu 6.10
server.

I am currently trying to automate a load test for a page that has a form
field on it. 
Its a pretty simple test:

1.  Get the page
2.  Edit the page
3.  Preview the changes
4.  Save the changes
5.  Get the updated page
Rinse.  Lather.  Repeat.

Here is the corresponding snippet of my XML...
<urllist>
    <baseurl>http://172.16.0.50:8080/</baseurl>
    <url>/Flood</url>
    <url>/Flood&amp;noregex</url>
    <url method="GET"
        
responsetemplate="cols=&quot;100&quot;&gt;([^&lt;]*)&lt;/textarea&gt;"
         responsename="form">/Flood?editi&amp;regex</url>
    <url method="POST"
         Content-Type="application/x-www-form-urlencoded"
        
payloadtemplate="markup=test+from+flood${form}&amp;action=preview">/Flood?edit&amp;preview</url>
    <url method="POST"
         Content-Type="application/x-www-form-urlencoded"
        
payloadtemplate="markup=test+from+flood${form}&amp;action=save">/Flood?edit&amp;save</url>
    <url>/Flood</url>
</urllist>

The issue I am seeing can clearly be seen in the report:
Connect Write   Read    Close   Hits    URL
0.0190  0.0190  20.0329 20.0337 50     
http://172.16.0.50:8080/Flood?edit&regex
0.0174  0.0174  0.0183  0.0183  50     
http://172.16.0.50:8080/Flood?edit&noregex
0.0128  0.0128  0.0139  0.0139  50     
http://172.16.0.50:8080/Flood?edit&save
0.0095  0.0096  0.0105  0.0105  100     http://172.16.0.50:8080/Flood
0.0003  0.0003  0.0019  0.0019  50     
http://172.16.0.50:8080/Flood?edit&preview

The read time for GETs with a regex is completely out of line with all
of my other queries.  On larger test runs,
the read times can will return values in one of 3 bands:  sub 1 second,
10 seconds, or in the 20 sec range (like this test).

Is there something very wrong with my config?  Or is the
responsetemplate / responsename functionality broken?
I have mimicked this test with wget, some command line tools, and siege,
but have yet to validate flood's results.

Any help on this would be greatly appreciated.
Let me know if you need more information.

Thanks in advance,
John Cook





Re: Issue with Flood's responsetemplate / resonsename?

Posted by Justin Erenkrantz <ju...@erenkrantz.com>.
On 2/5/07, John Cook <jc...@meatclown.com> wrote:
> Hello,
>
> I'm currently having issues with flood that I can't currently replicate
> with any of my other load / stress testing tools.
> I'm running a version of flood checked out of the subversion repository
> from mid January (1/16/07) on an Unbutu 6.10
> server.
>
> I am currently trying to automate a load test for a page that has a form
> field on it.
> Its a pretty simple test:
>
> 1.  Get the page
> 2.  Edit the page
> 3.  Preview the changes
> 4.  Save the changes
> 5.  Get the updated page
> Rinse.  Lather.  Repeat.
>
> Here is the corresponding snippet of my XML...
> <urllist>
>     <baseurl>http://172.16.0.50:8080/</baseurl>
>     <url>/Flood</url>
>     <url>/Flood&amp;noregex</url>
>     <url method="GET"
>
> responsetemplate="cols=&quot;100&quot;&gt;([^&lt;]*)&lt;/textarea&gt;"
>          responsename="form">/Flood?editi&amp;regex</url>

Note the 'editi' here - not sure if that's intentional on your part
though.  It could explain why the GET is failing.  What status code is
being returned by the GETs?  Is it a 200 as you expect?

>     <url method="POST"
>          Content-Type="application/x-www-form-urlencoded"
> payloadtemplate="markup=test+from+flood${form}&amp;action=preview">/Flood?edit&amp;preview</url>
>     <url method="POST"
>          Content-Type="application/x-www-form-urlencoded"
>
> payloadtemplate="markup=test+from+flood${form}&amp;action=save">/Flood?edit&amp;save</url>
>     <url>/Flood</url>
> </urllist>

The rest looks right at first glance - though I'm wondering if you're
hitting quoting issues.

> The issue I am seeing can clearly be seen in the report:
> Connect Write   Read    Close   Hits    URL
> 0.0190  0.0190  20.0329 20.0337 50
> http://172.16.0.50:8080/Flood?edit&regex
> 0.0174  0.0174  0.0183  0.0183  50
> http://172.16.0.50:8080/Flood?edit&noregex
> 0.0128  0.0128  0.0139  0.0139  50
> http://172.16.0.50:8080/Flood?edit&save
> 0.0095  0.0096  0.0105  0.0105  100     http://172.16.0.50:8080/Flood
> 0.0003  0.0003  0.0019  0.0019  50
> http://172.16.0.50:8080/Flood?edit&preview
>
> The read time for GETs with a regex is completely out of line with all
> of my other queries.  On larger test runs,
> the read times can will return values in one of 3 bands:  sub 1 second,
> 10 seconds, or in the 20 sec range (like this test).
>
> Is there something very wrong with my config?  Or is the
> responsetemplate / responsename functionality broken?
> I have mimicked this test with wget, some command line tools, and siege,
> but have yet to validate flood's results.
>
> Any help on this would be greatly appreciated.
> Let me know if you need more information.

AFAIK, it should work.  examples/round-robin-dynamic.xml should show
the right usage.  (If you have an old checkout, I just removed the
requestparamcount as those aren't needed.)

If it isn't the typo above, what does a network trace with Ethereal show?

HTH.  -- justin