[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Weird threads problem
Clement Laforet wrote:
On Fri, Nov 25, 2005 at 01:38:50PM +1100, Michael Vince wrote:
I am building apache2 with worker mode using something like this
portupgrade -NRr -m 'WITH_MPM=worker -DWITH_PROXY_MODULES'
/usr/ports/www/apache2
With 'ExtendedStatus On' I have noticed that after doing a apache
benchmark test with 'ab' I see a lot of stuck http gets in
/server-status listing I can leave the apache2 server untouched for days
but they still remain there, doing a apachectl graceful doesn't make
them go away either.
This only appears to be happening with worker MPM on and not prefork.
Does any one know if this is some kind of stuck thread problem or what?
Which version of apache and FreeBSD do you use? if FreeBSD >5.x which
threading library is used?
thanks
clem
The machine is 6.0-Release on i386 dual pentium 4 SMP
I been doing my testing on both libpthread and libthr
The testing I have been doing is this
ab -k -n 25500 -c 900 http://server/338kbyte.file
I have tried enabling libthr with this below in libmap.conf and
restarting Apache2 and have noticed that libthr can serve the requests
in a far less amount of load (35 for libpthread and around 4.5 for libthr)
With libthr it actually has less stuck listed gets (892) after a few
refreshes of /server-status
wget -q -O - http://localhost/server-status | grep -c "338k"
892
With libpthread it sits at 900 full stuck get lists in /server-status ,
no amounts of refreshes ever decrease the number.
wget -q -O - http://localhost/server-status | grep -c "338k"
900
libmap.conf
[/usr/local/sbin/httpd]
libpthread.so.2 libthr.so.2
libpthread.so libthr.so
On the good side of things the ab output says that all requests were
completed correctly, the test is done from another FreeBSD box.
ab -k -n 25500 -c 900 http://server/338kbyte.file
This is ApacheBench, Version 2.0.41-dev <$Revision: 1.121.2.12 $> apache-2.0
Copyright (c) 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Copyright (c) 1998-2002 The Apache Software Foundation,
http://www.apache.org/
Benchmarking server (be patient)
Completed 2550 requests
Completed 5100 requests
Completed 7650 requests
Completed 10200 requests
Completed 12750 requests
Completed 15300 requests
Completed 17850 requests
Completed 20400 requests
Completed 22950 requests
Finished 25500 requests
Server Software: Apache/2
Server Hostname: server
Server Port: 80
Document Path: /338kbyte.file
Document Length: 338141 bytes
Concurrency Level: 900
Time taken for tests: 74.539460 seconds
Complete requests: 25500
Failed requests: 0
Write errors: 0
Keep-Alive requests: 25500
Total transferred: 8745188465 bytes
HTML transferred: 8737830199 bytes
Requests per second: 342.10 [#/sec] (mean)
Time per request: 2630.804 [ms] (mean)
Time per request: 2.923 [ms] (mean, across all concurrent requests)
Transfer rate: 114573.18 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 42 1081.2 0 34206
Processing: 59 2467 1508.0 2188 14334
Waiting: 4 90 336.9 18 4469
Total: 59 2509 1860.8 2197 41153
Percentage of the requests served within a certain time (ms)
50% 2197
66% 2818
75% 3264
80% 3572
90% 4486
95% 5352
98% 6528
99% 7370
100% 41153 (longest request)
Regards,
Mike