On Sat, 2007-03-31 at 02:13 +0530, Asankha C. Perera wrote:
> Hi Oleg
> 
> I used the HttpCore port of the benchmark and for actual dynamic SOAP
> benchmarking its actually faster than Apache Bench for me. The ability
> to use chunking and SSL is great.. and I have enhanced your code to
> support concurrency like with ab.
> 
> For static html GETs ab did around 6600tps (over localhost to my same
> machine for tomcat) while the benchmark did around 3900 - but just
> from within the IDE without any optimizations or tuning.

Hi Asankha,

Very peculiar. AB is bound to be faster because it does not have an
overhead of an object model. It simply writes to and read from the
socket with minimal processing overhead.

I could explain difference in performance for SOAP messages. AB is a
HTTP/1.0 client and as such cannot handle chunk-coded content. The only
way an HTTP server can delimit an HTTP/1.0 response body of unknown
length is by closing the connection. So, essentially AB ends up opening
a new connection per each request which explains the degradation in
performance. 


>  But for real world SOAP calls for which I am interested, the actual
> tps by the backend server was much lower and hence there is no visible
> difference for me between the clients, but HttpCore benchmark is still
> faster as I can now use keepalives with chunking :-)
> 
> I will test this next week over real network connections and multiple
> physical machines.. but I am seeing great results already :-) I will
> also share the modifications I have done and would definitely
> recommend this to anyone who ever looked at JMeter or expensive http/s
> load testing tools
> 

Sebastian,

Would you be interested in accepting HttpBenchmark (either based on
Commons HttpClient or HttpComponents Core) to JMeter distribution? There
may be some folks around interested in a java based AB clone, that
supports chunk-coding and SSL. Just a thought.   

Cheers

Oleg


> regards
> asankha
> 
> Asankha C. Perera wrote: 
> > Hi Oleg / Odi
> > 
> > Thanks for the quick responses.. The c't code doesn't seem to
> > support POST outright, though it seems like a small enhancement. But
> > since its C I am assuming it to be fast.
> > 
> > I am very interested in the code Oleg shared - as its Java - I can
> > extend and work with it more easily :-) and I am hoping JDK 1.5
> > would optimize it to C code levels when used for a benchmark.. I
> > will let you know my results and outcome
> > 
> > thanks
> > asankha
> > 
> > Oleg Kalnichevski wrote: 
> > > On Fri, 2007-03-30 at 15:17 +0530, Asankha C. Perera wrote:
> > >   
> > > > Hi
> > > > 
> > > > Can someone let me know any good free/open source tools to load test 
> > > > HTTP 1.1 (We use chunking most of the time).. Apache bench 
> > > > unfortunately 
> > > > does not support 1.1 and I think its SSL support is still not very 
> > > > stable.
> > > > 
> > > > thanks
> > > > asankha
> > > > 
> > > >     
> > > 
> > > Hi Asankha,
> > > 
> > > Have you looked at JMeter? 
> > > 
> > > Alternatively you may also take a look at HttpBenchmark tool in Commons
> > > HttpClient 'contrib' package. The tool implements a subset of AB
> > > commands and is fully HTTP/1.1 capable. 
> > > 
> > > http://svn.apache.org/repos/asf/jakarta/commons/proper/httpclient/trunk/src/contrib/org/apache/commons/httpclient/contrib/benchmark/
> > > 
> > > There is also an HttpCore port of the HttpBenchmark tool
> > > 
> > > http://svn.apache.org/repos/asf/jakarta/httpcomponents/httpcore/trunk/contrib/src/main/java/org/apache/http/contrib/benchmark/
> > > 
> > > One should be able to add SSL support without much efforts
> > > 
> > > Oleg
> > > 
> > > 
> > >   
> > > > ---------------------------------------------------------------------
> > > > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > > > For additional commands, e-mail: [EMAIL PROTECTED]
> > > > 
> > > > 
> > > >     
> > > 
> > > 
> > > ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > > For additional commands, e-mail: [EMAIL PROTECTED]
> > > 
> > > 
> > >   
> > --------------------------------------------------------------------- To 
> > unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: 
> > [EMAIL PROTECTED]
> ---------------------------------------------------------------------
> To unsubscribe, e-mail:
> [EMAIL PROTECTED] For additional
> commands, e-mail: [EMAIL PROTECTED]


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to