Re: Parsing error when parsing the second time

Joe Schaefer <[email protected]>
Newsgroups gmane.comp.apache.apreq
Message-ID <[email protected]>
Joe Schaefer <[email protected]> writes:

> Andy Grundman <[email protected]> writes:
>
>> I'm working on trying to improve the performance of Catalyst's body parsing.
>> We're currently using the all-Perl HTTP::Body, and it  actually beats
>> APR::Request for urlencoded data.  The regexes are  pretty simple, so this
>> isn't too surprising.
>
> I just ran a few microbenchmarks comparing apreq's urldecoding parser to
> HTTP::Body, and apreq came out about 10x faster.  How are you getting
> your results?

The test script is I used is here (requires svn trunk):

   http://people.apache.org/~joes/testing_apreq2_vs_http_body.pl

when I run it with an arg of 10000, here's what it produced:

Benchmark: timing 10000 iterations of apreq_args, apreq_body, http_body...
apreq_args:  2 wallclock secs ( 1.89 usr +  0.00 sys =  1.89 CPU) @ 5291.01/s (n=10000)
apreq_body:  4 wallclock secs ( 3.81 usr +  0.00 sys =  3.81 CPU) @ 2624.67/s (n=10000)
 http_body: 70 wallclock secs (69.84 usr +  0.00 sys = 69.84 CPU) @ 143.18/s (n=10000)

I'm guessing you benchmarked by throwing lots of requests at a
webserver, in which case you probably hit a bottleneck somewhere
unrelated to the actual parsing.

-- 
Joe Schaefer
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.