httpd-test-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sergey Ten" <ser...@sourcelabs.com>
Subject RE: stress testing of Apache server
Date Wed, 04 May 2005 00:36:38 GMT
Hello Paul.

Thank you very much for your time and suggestions.

My comments are inline.

Thanks,
Sergey


> -----Original Message-----
> From: Paul Querna [mailto:chip@force-elite.com]
> Sent: Tuesday, May 03, 2005 1:52 PM
> To: dev@httpd.apache.org
> Cc: test-dev@httpd.apache.org; 'Sergey Ten'
> Subject: Re: stress testing of Apache server
> 
> Sergey Ten wrote:
> > Hello all,
> >
> > SourceLabs is developing a set of tests (and appropriate workload data)
> to
> > perform stress testing of an Apache server using requests for static
> HTML
> > pages only. We are interested in getting feedback on our plans from the
> > Apache server community, which has a lot of experience in developing,
> > testing and using the Apache server.
> >
> > Information available on the Internet, as well as our own experiments,
> make
> > it clear that stressing a web server with requests for static HTML pages
> > requires special care to avoid situations when either network bandwidth
> or
> > disk IO become a limiting factor. Thus simply increasing the number of
> > clients (http requests sent) alone is not the appropriate way to stress
> the
> > server. We think that use of a special workload data (including
> httpd.conf
> > and .htaccess files) will help to execute more code, and as a result,
> better
> > stress the server.
> 
> Which tools are you planning to use?  Flood might be useful:
> http://httpd.apache.org/test/flood/

We are using flood to test Apache. Functionality it provides is adequate for
our needs; there are a couple of things missed (for instance flood does not
allow to verify that http request returns a given code: verify_resp
functions treat any return code different from 200 and 3xx as a failure) but
they can be easily fixed.

> 
> I am not 100% sure on the purpose of your test.  If you want to tune
> apache for the highest performance, one of the first things is to remove
> .htaccess files.  Doing hundreds of mod_rewrite rules inside an
> .htaccess file for example has a *huge* penalty.
> 
> > We anticipate that our tests will cover 80% of code (using test and code
> > coverage metrics) for the following Apache modules (as most commonly
> used):
> > .	mod_rewrite;
> > .	mod_auth and mod_auth_ldap;
> > .	mod_ssl.
> 
> Which mod_auth? File? DBM? Basic? Digest?
> 

A mixture of File and DBM via virtual hosts and .htaccess. We are using
Basic authentication. In order to use Digest flood sources need to be
modified (currently flood can include only basic auth info into http
header). The change is simple and I will probably make it when have cycles.

> Different MPMs?  Worker, Event, Prefork, Leader.. etc.
> 
> It would be nice if you could do 1.3, 2.0 and 2.1.  Some things also
> depend greatly on the OS... For the threaded MPMs on linux, using 2.6
> and NPTL can make a huge difference.

We are currently testing Apache 1.3, on RHEL 3 on 32-bit x86. We plan to run
tests against Apache 2.x pretty soon, although have not finalized details
yet (MPMs is one of them). We are scheduling additional resources to run
tests on different platforms/OS. Which platforms/OS will be interesting for
you?

> 
> > We would like to know your opinions and feedback on:
> > .	What are the stress scenarios where you have had problems?
> 
> Running out of RAM. If the machine runs out of RAM, performance will
> tank.  The reason many 'benchmarks' aren't realistic is that they do not
> simulate real 'Internet' load.  On the Internet you have a huge range of
> clients, from 28.8 modems with 1 full second of latency, to DSL and
> everything in between.  Many of the benchmarks are done over 100mbit or
> greater LANs, that do not accurately simulate how traffic hits a real
> server.
> 
> > .	What are the modules (including external) you have stressed which
> > are missed from our list?
> > .	What are the modules (including external) you would be interested in
> > stressing?
> 
> In 2.x:
> mod_disk_cache
> mod_proxy
> 
> It would also be interesting compare proxying for Tomcat, and test
> mod_proxy_ajp vs mod_jk vs mod_proxy_http.
> 
> The effects of mod_defalte? (Gzip content compression... look at how
> much server CPU for how much less bandwidth it uses?  Most servers of
> static content are bandwidth limited, not CPU, so in most cases it makes
> sense to use mod_deflate.)
> 

I will take a look at these modules. Thank you.

> 
> > Additional feedback on the validity of our test plan, ranking modules
> > according to their importance, etc would also be much appreciated.
> 
> It would be cool to have more details on how you intend to do the
> benchmark, including the configuration files, and what client
> application...

We will make all our tests, including the configuration files (for both
server and clients), available to the open source community.


Mime
View raw message