Client side HTTP micro-benchmark
Benchmark source code
https://svn.apache.org/repos/asf/httpcomponents/benchmark/httpclient/trunk/
Hardware specs of the system used to execute the benchmark
Intel(R) Core(TM) i7-3517U CPU @ 1.90GHz Processor cache size: 4096 KB RAM MemTotal: 3933112 kB
Components versions
Beanchmark revision r1482761
Apache HttpCore: 4.3-BETA2
Apache HttpClient: 4.3-BETA1
Apache HttpAsyncClient: 4.0-BETA4
Jetty: 8.1.7.v20120910
Ning AHC: 1.7.12
Benchmark results
Linux ubuntu 3.5.0-26-generic #42-Ubuntu SMP Fri Mar 8 23:18:20 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
java version "1.7.0_21" Java(TM) SE Runtime Environment (build 1.7.0_21-b11) Java HotSpot(TM) 64-Bit Server VM (build 23.21-b01, mixed mode)
1'000'000 requests / up to 50 concurrent connections
================================= HTTP agent: JRE HTTP 1.7.0_21 --------------------------------- 1000000 POST requests --------------------------------- Document URI: http://localhost:53649/echo Document Length: 2048 bytes Concurrency level: 50 Time taken for tests: 54.03 seconds Complete requests: 1000000 Failed requests: 0 Content transferred: 2048000000 bytes Requests per second: 18508.236 [#/sec] (mean) --------------------------------- ================================= HTTP agent: Apache HttpClient (ver: 4.3-beta1) --------------------------------- 1000000 POST requests --------------------------------- Document URI: http://localhost:53649/echo Document Length: 2048 bytes Concurrency level: 50 Time taken for tests: 36.474 seconds Complete requests: 1000000 Failed requests: 0 Content transferred: 2048000000 bytes Requests per second: 27416.791 [#/sec] (mean) --------------------------------- ================================= HTTP agent: HttpCore NIO (ver: 4.3-beta2) --------------------------------- 1000000 POST requests --------------------------------- Document URI: http://localhost:53649/echo Document Length: 2048 bytes Concurrency level: 50 Time taken for tests: 38.926 seconds Complete requests: 1000000 Failed requests: 0 Content transferred: 2048000000 bytes Requests per second: 25689.771 [#/sec] (mean) --------------------------------- ================================= HTTP agent: Apache HttpAsyncClient (ver: 4.0-beta4) --------------------------------- 1000000 POST requests --------------------------------- Document URI: http://localhost:53649/echo Document Length: 2048 bytes Concurrency level: 50 Time taken for tests: 43.318 seconds Complete requests: 1000000 Failed requests: 0 Content transferred: 2048000000 bytes Requests per second: 23085.092 [#/sec] (mean) --------------------------------- ================================= HTTP agent: Jetty 8.1.7.v20120910 --------------------------------- 1000000 POST requests --------------------------------- Document URI: http://localhost:53649/echo Document Length: 2048 bytes Concurrency level: 50 Time taken for tests: 73.568 seconds Complete requests: 1000000 Failed requests: 0 Content transferred: 2048000000 bytes Requests per second: 13592.866 [#/sec] (mean) --------------------------------- ================================= HTTP agent: Ning async HTTP client 1.7.12 --------------------------------- 1000000 POST requests --------------------------------- Document URI: http://localhost:53649/echo Document Length: 2048 bytes Concurrency level: 50 Time taken for tests: 53.284 seconds Complete requests: 1000000 Failed requests: 0 Content transferred: 2048000000 bytes Requests per second: 18767.36 [#/sec] (mean) ---------------------------------
100'000 requests / up to 50 concurrent connections (large message body)
================================= HTTP agent: JRE HTTP 1.7.0_21 --------------------------------- 100000 POST requests --------------------------------- Document URI: http://localhost:34489/echo Document Length: 204800 bytes Concurrency level: 50 Time taken for tests: 33.739 seconds Complete requests: 100000 Failed requests: 0 Content transferred: 20480000000 bytes Requests per second: 2963.9292 [#/sec] (mean) --------------------------------- ================================= HTTP agent: Apache HttpClient (ver: 4.3-beta1) --------------------------------- 100000 POST requests --------------------------------- Document URI: http://localhost:34489/echo Document Length: 204800 bytes Concurrency level: 50 Time taken for tests: 28.608 seconds Complete requests: 100000 Failed requests: 0 Content transferred: 20480000000 bytes Requests per second: 3495.5256 [#/sec] (mean) --------------------------------- ================================= HTTP agent: HttpCore NIO (ver: 4.3-beta2) --------------------------------- 100000 POST requests --------------------------------- Document URI: http://localhost:34489/echo Document Length: 204800 bytes Concurrency level: 50 Time taken for tests: 25.417 seconds Complete requests: 100000 Failed requests: 0 Content transferred: 20480000000 bytes Requests per second: 3934.3748 [#/sec] (mean) --------------------------------- ================================= HTTP agent: Apache HttpAsyncClient (ver: 4.0-beta4) --------------------------------- 100000 POST requests --------------------------------- Document URI: http://localhost:34489/echo Document Length: 204800 bytes Concurrency level: 50 Time taken for tests: 25.716 seconds Complete requests: 100000 Failed requests: 0 Content transferred: 20480000000 bytes Requests per second: 3888.6296 [#/sec] (mean) --------------------------------- ================================= HTTP agent: Jetty 8.1.7.v20120910 --------------------------------- 100000 POST requests --------------------------------- Document URI: http://localhost:34489/echo Document Length: 204800 bytes Concurrency level: 50 Time taken for tests: 70.245 seconds Complete requests: 100000 Failed requests: 0 Content transferred: 20480000000 bytes Requests per second: 1423.5889 [#/sec] (mean) --------------------------------- ================================= HTTP agent: Ning async HTTP client 1.7.12 --------------------------------- 100000 POST requests --------------------------------- Document URI: http://localhost:34489/echo Document Length: 204800 bytes Concurrency level: 50 Time taken for tests: 38.808 seconds Complete requests: 100000 Failed requests: 0 Content transferred: 20480000000 bytes Requests per second: 2576.7883 [#/sec] (mean) ---------------------------------