Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 22 Apr 2007 19:08:56 +0300
From:      Stefan Lambrev <cheffo@FreeBSD-BG.org>
To:        Ivan Voras <ivoras@fer.hr>
Cc:        freebsd-performance@freebsd.org
Subject:   Re: apache httpd performance
Message-ID:  <462B8898.5090306@FreeBSD-BG.org>
In-Reply-To: <f0e5lc$u4d$1@sea.gmane.org>
References:  <462A31A9.5080207@FreeBSD-BG.org> <f0e5lc$u4d$1@sea.gmane.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Hi,

Ivan Voras wrote:
> Cheffo wrote:
>
>   
>> What else I can change/test to improve performance?
>>     
>
> First you'll have to give more info about the hardware on both systems,
> and the way you benchmarked them (e.g. did you benchmark over ethernet
> or from the same machine?). There are also a bunch of things that may
> make apache go faster/slower, for example DNS resolving for the logs,
> rewrite rules, etc. - you should test with (as much as they can be)
> identical configurations.
>   
I'm using my laptop to run ab in both test, and 2 totally different 
servers :)
That's why I do not pretend that the benchmark is done the right way.

The linux host is with pentium 4 single core processor,
The freebsd host is amd64 athlon 3200+ (2GHz) - single core too

Both servers share same dns server(s), so I do not think that the DNS 
can be issue.

I'm using 3com network card - 100mbps - xl.

I'll test with accf_http and will report back. If there is a problem (as 
I'm still not sure that there is) I'll make more accurate benchmark
and will try to find where is the problem (with your help) :)
> On a slow-ish 2 CPU Pentium3 server, over gigabit network (remote
> client), I get:
>
> Server Software:        Apache/2.2.3
> Server Port:            80
>
> Document Path:          /file.txt
> Document Length:        9500 bytes
>
> Concurrency Level:      100
> Time taken for tests:   27.300259 seconds
> Complete requests:      50000
> Failed requests:        0
> Write errors:           0
> Total transferred:      489226808 bytes
> HTML transferred:       475025956 bytes
> Requests per second:    1831.48 [#/sec] (mean)
> Time per request:       54.601 [ms] (mean)
> Time per request:       0.546 [ms] (mean, across all concurrent requests)
> Transfer rate:          17500.20 [Kbytes/sec] received
>
> On the same server, ab running locally, I get:
>
> Server Software:        Apache/2.2.3
> Server Port:            80
>
> Document Path:          /file.txt
> Document Length:        9500 bytes
>
> Concurrency Level:      100
> Time taken for tests:   30.8557 seconds
> Complete requests:      29194
> Failed requests:        6
>    (Connect: 6, Length: 0, Exceptions: 0)
> Write errors:           0
> Total transferred:      286117856 bytes
> HTML transferred:       277811424 bytes
> Requests per second:    972.86 [#/sec] (mean)
> Time per request:       102.790 [ms] (mean)
> Time per request:       1.028 [ms] (mean, across all concurrent requests)
> Transfer rate:          9311.04 [Kbytes/sec] received
>
> (Yes, this is a different version of apache than yours, but I'm
> illustrating a point :) )
>
> Some more data points:
>
> - Remote client, apache, using keepalives:
> Requests per second:    2891.61 [#/sec] (mean)
> Time per request:       34.583 [ms] (mean)
> Time per request:       0.346 [ms] (mean, across all concurrent requests)
> Transfer rate:          27729.00 [Kbytes/sec] received
>
> - Remote client, using thttpd instead of apache (keepalives have no
> influence here):
> Requests per second:    3728.68 [#/sec] (mean)
> Time per request:       26.819 [ms] (mean)
> Time per request:       0.268 [ms] (mean, across all concurrent requests)
> Transfer rate:          35499.92 [Kbytes/sec] received
>
> Regarding this last one: It seems that FreeBSD really benefits from
> using 2 CPUs here. thttpd is a single-threaded async server, but the
> load on the machine shows cca 10% idle. Thttpd gets ~~45%, swi:net gets
> 45%, irq20:bge0 gets 20%, syslogd gets 5% and the rest goes where top
> can't follow. It looks like ipfw might be one of the limiting factors
> here (I use dynamic rules and the log shows ipfw discarding packets that
> look valid).
>
>
>   
Can you make this test with default /manual/ alias instead of file.txt, 
so we can compare results ?



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?462B8898.5090306>