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
- Benchmark revision
r1594594
- Apache HttpCore:
4.3.2
- Apache HttpClient:
4.3.4-SNAPSHOT, r1597031
- Apache HttpAsyncClient:
4.0.2-SNAPSHOT, r1597034
- Jetty:
8.1.15.v20140411
- Ning AHC:
1.8.8
Benchmark results
Linux ubuntu 3.13.0-24-generic #47-Ubuntu SMP Fri May 2 23:30:00 UTC 2014 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:44000/echo Document Length: 2048 bytes Concurrency level: 50 Time taken for tests: 63.966 seconds Complete requests: 1000000 Failed requests: 0 Content transferred: 2048000000 bytes Requests per second: 15633.306 [#/sec] (mean) --------------------------------- ================================= HTTP agent: Apache HttpClient 3.1 --------------------------------- 1000000 POST requests --------------------------------- Document URI: http://localhost:48602/echo Document Length: 2048 bytes Concurrency level: 50 Time taken for tests: 59.289 seconds Complete requests: 1000000 Failed requests: 0 Content transferred: 2048000000 bytes Requests per second: 16866.535 [#/sec] (mean) --------------------------------- ================================= HTTP agent: Apache HttpClient (ver: 4.3.4-SNAPSHOT) --------------------------------- 1000000 POST requests --------------------------------- Document URI: http://localhost:53471/echo Document Length: 2048 bytes Concurrency level: 50 Time taken for tests: 45.177 seconds Complete requests: 1000000 Failed requests: 0 Content transferred: 2048000000 bytes Requests per second: 22135.158 [#/sec] (mean) --------------------------------- ================================= HTTP agent: HttpCore NIO (ver: 4.3.2) --------------------------------- 1000000 POST requests --------------------------------- Document URI: http://localhost:43233/echo Document Length: 2048 bytes Concurrency level: 50 Time taken for tests: 51.83 seconds Complete requests: 1000000 Failed requests: 0 Content transferred: 2048000000 bytes Requests per second: 19293.844 [#/sec] (mean) --------------------------------- ================================= HTTP agent: Apache HttpAsyncClient (ver: 4.0.2-SNAPSHOT) --------------------------------- 1000000 POST requests --------------------------------- Document URI: http://localhost:41274/echo Document Length: 2048 bytes Concurrency level: 50 Time taken for tests: 51.359 seconds Complete requests: 1000000 Failed requests: 0 Content transferred: 2048000000 bytes Requests per second: 19470.783 [#/sec] (mean) --------------------------------- ================================= HTTP agent: Jetty 8.1.15.v20140411 --------------------------------- 1000000 POST requests --------------------------------- Document URI: http://localhost:59923/echo Document Length: 2048 bytes Concurrency level: 50 Time taken for tests: 102.148 seconds Complete requests: 1000000 Failed requests: 0 Content transferred: 2048000000 bytes Requests per second: 9789.717 [#/sec] (mean) --------------------------------- ================================= HTTP agent: Ning async HTTP client 1.8.8 --------------------------------- 1000000 POST requests --------------------------------- Document URI: http://localhost:33588/echo Document Length: 2048 bytes Concurrency level: 50 Time taken for tests: 55.961 seconds Complete requests: 1000000 Failed requests: 0 Content transferred: 2048000000 bytes Requests per second: 17869.588 [#/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:50207/echo Document Length: 204800 bytes Concurrency level: 50 Time taken for tests: 34.201 seconds Complete requests: 100000 Failed requests: 0 Content transferred: 20480000000 bytes Requests per second: 2923.891 [#/sec] (mean) --------------------------------- ================================= HTTP agent: Apache HttpClient 3.1 --------------------------------- 100000 POST requests --------------------------------- Document URI: http://localhost:59881/echo Document Length: 204800 bytes Concurrency level: 50 Time taken for tests: 36.824 seconds Complete requests: 100000 Failed requests: 0 Content transferred: 20480000000 bytes Requests per second: 2715.62 [#/sec] (mean) --------------------------------- ================================= HTTP agent: Apache HttpClient (ver: 4.3.4-SNAPSHOT) --------------------------------- 100000 POST requests --------------------------------- Document URI: http://localhost:60236/echo Document Length: 204800 bytes Concurrency level: 50 Time taken for tests: 33.737 seconds Complete requests: 100000 Failed requests: 0 Content transferred: 20480000000 bytes Requests per second: 2964.1047 [#/sec] (mean) --------------------------------- ================================= HTTP agent: HttpCore NIO (ver: 4.3.2) --------------------------------- 100000 POST requests --------------------------------- Document URI: http://localhost:55236/echo Document Length: 204800 bytes Concurrency level: 50 Time taken for tests: 30.707 seconds Complete requests: 100000 Failed requests: 0 Content transferred: 20480000000 bytes Requests per second: 3256.5864 [#/sec] (mean) --------------------------------- ================================= HTTP agent: Apache HttpAsyncClient (ver: 4.0.2-SNAPSHOT) --------------------------------- 100000 POST requests --------------------------------- Document URI: http://localhost:49116/echo Document Length: 204800 bytes Concurrency level: 50 Time taken for tests: 32.466 seconds Complete requests: 100000 Failed requests: 0 Content transferred: 20480000000 bytes Requests per second: 3080.1455 [#/sec] (mean) --------------------------------- ================================= HTTP agent: Jetty 8.1.15.v20140411 --------------------------------- 100000 POST requests --------------------------------- Document URI: http://localhost:41482/echo Document Length: 204800 bytes Concurrency level: 50 Time taken for tests: 48.036 seconds Complete requests: 100000 Failed requests: 0 Content transferred: 20480000000 bytes Requests per second: 2081.772 [#/sec] (mean) --------------------------------- ================================= HTTP agent: Ning async HTTP client 1.8.8 --------------------------------- 100000 POST requests --------------------------------- Document URI: http://localhost:49403/echo Document Length: 204800 bytes Concurrency level: 50 Time taken for tests: 41.687 seconds Complete requests: 100000 Failed requests: 0 Content transferred: 20480000000 bytes Requests per second: 2398.8293 [#/sec] (mean) ---------------------------------