[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[libmicrohttpd] questions on performance
From: |
Taehwan Weon |
Subject: |
[libmicrohttpd] questions on performance |
Date: |
Tue, 28 May 2013 12:51:38 +0900 |
Hi,
I made a caching proxy based on libmicrohttpd 0.9.27
While doing a stress test with tsung, I got a strange problem.
My daemon start params were
1) MHD_USE_SELECT_INTERNALLY with # of thread = 40
2) MHD_USE_POLL|MHD_USE_THREAD_PER_CONNECTION
My stress tool(tsung) is generating 10,000 GET requests/sec for 1,000
1KB objects with protocol of HTTP 1.1
HTTP 1.1 Keep-alive feature was off ('cause tsung does not support)
My measurement is between the time when the first request bytes and
the time when completion notification callback signaled.
I subtracted the internal processing time (file-IOs)
Please look at the following values (measured for 2-hours)
1. elapsed time between the time request handler called and time time
completion notification called back. : about 900~1100 msec/req
2. internal file-io(cache-based) operation time : 3 msec/req (all
objects were cached in main memory)
(to measure file-IO time, I measured the processing time of the
callback given to MHD_create_response_from_callback)
In the 2nd param(MHD_USE_POLL), I found about more than 1,000
libmicrohttpd threads.
Could you please recommend me what I can do for better performance?
-----
weon
- [libmicrohttpd] questions on performance,
Taehwan Weon <=