libmicrohttpd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[libmicrohttpd] Re: A question about libmicrohttpd


From: yavuz gokirmak
Subject: [libmicrohttpd] Re: A question about libmicrohttpd
Date: Tue, 14 Jul 2009 09:10:51 +0300

Hello,

I am using freebsd 7.2 and have a problem when trying to test libmicrohttp with ab (apache benchmark).
I can not give big concurency values to ab's -c argument. I asked Christian but he couldn't repeat the problem.

If you have any idea please inform me...


2009/7/13 Christian Grothoff <address@hidden>
Hi!

I can not reproduce the problem; when I run ab -c 100 -n 10000 MHD runs just
fine (using internal select).  I've modified your code to use the thread pooling
function, which significantly improves performance (latency) on my notebook.

As a result, on an Intel(R) Atom(TM) CPU N270   @ 1.60GHz (dual core), I get:

address@hidden:~$ /usr/sbin/ab -c 100 -n 10000 http://127.0.0.1:8080/
This is ApacheBench, Version 2.3 <$Revision: 655654 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/

Benchmarking 127.0.0.1 (be patient)
Completed 1000 requests
Completed 2000 requests
Completed 3000 requests
Completed 4000 requests
Completed 5000 requests
Completed 6000 requests
Completed 7000 requests
Completed 8000 requests
Completed 9000 requests
Completed 10000 requests
Finished 10000 requests


Server Software:
Server Hostname:        127.0.0.1
Server Port:            8080

Document Path:          /
Document Length:        41 bytes

Concurrency Level:      100
Time taken for tests:   6.709 seconds
Complete requests:      10000
Failed requests:        0
Write errors:           0
Total transferred:      1170000 bytes
HTML transferred:       410000 bytes
Requests per second:    1490.46 [#/sec] (mean)
Time per request:       67.093 [ms] (mean)
Time per request:       0.671 [ms] (mean, across all concurrent requests)
Transfer rate:          170.30 [Kbytes/sec] received

Connection Times (ms)
             min  mean[+/-sd] median   max
Connect:       22   34   9.7     30      67
Processing:    11   32   9.9     28      69
Waiting:        1   17  10.7     15      64
Total:         46   67  18.6     58     125

Percentage of the requests served within a certain time (ms)
 50%     58
 66%     80
 75%     87
 80%     88
 90%     91
 95%     96
 98%    105
 99%    112
 100%    125 (longest request)

I used the attached code, compiled using:

 gcc -I include/ -Llib -lmicrohttpd -o serv -O2 simpleHttp.c

Now, I do not claim that this is the best way  to configure or compile MHD for
my system, all I am saying  is that it does seem to perform reasonably well as
far as I can see.

I hope this helps.


Christian
p.s.: In general, I think it is a good idea if you send these types of
questions to the MHD mailinglist.


On Monday 13 July 2009 14:53:29 yavuz gokirmak wrote:
> Hi Christian,
>
> Sory for asking too much questions...
>
> I am trying to test libmicrohttp's performance via *ab*(apache benchmark)
> When I try
> ab -c 32 -n 100 http://127.0.0.1:80/
> I get
> Benchmarking 127.0.0.1 (be patient)...apr_socket_recv: Connection reset by
> peer (54)
> error from ab.
>
> Above command works well for -c values less then 32. Apache server gives no
> error even I set -c as 100.
>
> I couldn't figure out the problem. I tried both MHD_USE_SELECT_INTERNALLY
> and MHD_USE_THREAD_PER_CONNECTION modes and also tried to alter the
> MHD_OPTION_CONNECTION_LIMIT value.
>
> If you have any idea I am glad to hear.
>
> best regards...
>
> yavuz...
>
>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]