HttpCore performance benchmarks
Benchmark source code
In order to execute the benchmark locally install the latest snapshot of HttpCore from the Apache SVN repository and two optional modules httpcore-ab and httpcore-benchmark
http://svn.apache.org/repos/asf/httpcomponents/httpcore/trunk/httpcore-ab/ http://svn.apache.org/repos/asf/httpcomponents/httpcore/trunk/httpcore-benchmark/
and then execute mvn test command of the httpcore-benchmark module
Hardware specs of the system used to execute the benchmark
CPU: Intel(R) Core(TM)2 Quad CPU Q6600 @ 2.40GHz Processor cache size: 4096 KB RAM MemTotal: 3353824 kB
Software versions
HttpCore: 4.1-ALPHA2 (Revision: 923417)
Jetty: 7.0.1.v20091125
Benchmark results
Linux Ubuntu 9.10 / JRE 1.6
Linux ubuntu 2.6.31-19-generic #56-Ubuntu SMP Thu Jan 28 01:26:53 UTC 2010 i686 GNU/Linux
java version "1.6.0_18" Java(TM) SE Runtime Environment (build 1.6.0_18-b07) Java HotSpot(TM) Server VM (build 16.0-b13, mixed mode)
---------------------------------------------------------------
Jetty (blocking I/O); version: 7.0.1.v20091125
---------------------------------------------------------------
Server Software: Jetty(7.0.1.v20091125)
Server Hostname: localhost
Server Port: 8989
Document Path: http://localhost:8989/rnd?c=2048
Document Length: 2048 bytes
Concurrency Level: 25
Time taken for tests: 14.147477 seconds
Complete requests: 500000
Failed requests: 0
Write errors: 0
Kept alive: 500000
Total transferred: 1024000000 bytes
Requests per second: 35,341.99 [#/sec] (mean)
Time per request: 0.707 [ms] (mean)
Time per request: 0.028 [ms] (mean, across all concurrent requests)
Transfer rate: 72,380.39 [Kbytes/sec] received
-1 kb/s sent
72,380.39 kb/s total
---------------------------------------------------------------
---------------------------------------------------------------
HttpCore (blocking I/O); version: 4.1-alpha2-SNAPSHOT
---------------------------------------------------------------
Server Software: HttpCore-Test/1.1
Server Hostname: localhost
Server Port: 8989
Document Path: http://localhost:8989/rnd?c=2048
Document Length: 2048 bytes
Concurrency Level: 25
Time taken for tests: 8.899113 seconds
Complete requests: 500000
Failed requests: 0
Write errors: 0
Kept alive: 500000
Total transferred: 1024000000 bytes
Requests per second: 56,185.37 [#/sec] (mean)
Time per request: 0.445 [ms] (mean)
Time per request: 0.018 [ms] (mean, across all concurrent requests)
Transfer rate: 115,067.65 [Kbytes/sec] received
-1 kb/s sent
115,067.65 kb/s total
---------------------------------------------------------------
Error: Socket closed
---------------------------------------------------------------
Jetty (NIO); version: 7.0.1.v20091125
---------------------------------------------------------------
Server Software: Jetty(7.0.1.v20091125)
Server Hostname: localhost
Server Port: 8989
Document Path: http://localhost:8989/rnd?c=2048
Document Length: 2048 bytes
Concurrency Level: 25
Time taken for tests: 266.941399 seconds
Complete requests: 500000
Failed requests: 0
Write errors: 0
Kept alive: 500000
Total transferred: 1024000000 bytes
Requests per second: 1,873.07 [#/sec] (mean)
Time per request: 13.347 [ms] (mean)
Time per request: 0.534 [ms] (mean, across all concurrent requests)
Transfer rate: 3,836.05 [Kbytes/sec] received
-1 kb/s sent
3,836.05 kb/s total
---------------------------------------------------------------
---------------------------------------------------------------
HttpCore (NIO); version: 4.1-alpha2-SNAPSHOT
---------------------------------------------------------------
Server Software: HttpCore-NIO-Test/1.1
Server Hostname: localhost
Server Port: 8989
Document Path: http://localhost:8989/rnd?c=2048
Document Length: 2048 bytes
Concurrency Level: 25
Time taken for tests: 19.253212 seconds
Complete requests: 500000
Failed requests: 0
Write errors: 0
Kept alive: 500000
Total transferred: 1024000000 bytes
Requests per second: 25,969.69 [#/sec] (mean)
Time per request: 0.963 [ms] (mean)
Time per request: 0.039 [ms] (mean, across all concurrent requests)
Transfer rate: 53,185.93 [Kbytes/sec] received
-1 kb/s sent
53,185.93 kb/s total
Windows Vista / JRE 1.6
java version "1.6.0_18" Java(TM) SE Runtime Environment (build 1.6.0_18-b07) Java HotSpot(TM) Client VM (build 16.0-b13, mixed mode, sharing)
---------------------------------------------------------------
Jetty (blocking I/O); version: 7.0.1.v20091125
---------------------------------------------------------------
Server Software: Jetty(7.0.1.v20091125)
Server Hostname: localhost
Server Port: 8989
Document Path: http://localhost:8989/rnd?c=2048
Document Length: 2048 bytes
Concurrency Level: 25
Time taken for tests: 15.801919 seconds
Complete requests: 500000
Failed requests: 0
Write errors: 0
Kept alive: 500000
Total transferred: 1024000000 bytes
Requests per second: 31,641.73 [#/sec] (mean)
Time per request: 0.790 [ms] (mean)
Time per request: 0.032 [ms] (mean, across all concurrent requests)
Transfer rate: 64,802.26 [Kbytes/sec] received
-1 kb/s sent
64,802.26 kb/s total
---------------------------------------------------------------
---------------------------------------------------------------
HttpCore (blocking I/O); version: 4.1-alpha2-SNAPSHOT
---------------------------------------------------------------
Server Software: HttpCore-Test/1.1
Server Hostname: localhost
Server Port: 8989
Document Path: http://localhost:8989/rnd?c=2048
Document Length: 2048 bytes
Concurrency Level: 25
Time taken for tests: 16.984985 seconds
Complete requests: 500000
Failed requests: 0
Write errors: 0
Kept alive: 500000
Total transferred: 1024000000 bytes
Requests per second: 29,437.76 [#/sec] (mean)
Time per request: 0.849 [ms] (mean)
Time per request: 0.034 [ms] (mean, across all concurrent requests)
Transfer rate: 60,288.54 [Kbytes/sec] received
-1 kb/s sent
60,288.54 kb/s total
---------------------------------------------------------------
Error: socket closed
---------------------------------------------------------------
Jetty (NIO); version: 7.0.1.v20091125
---------------------------------------------------------------
Server Software: Jetty(7.0.1.v20091125)
Server Hostname: localhost
Server Port: 8989
Document Path: http://localhost:8989/rnd?c=2048
Document Length: 2048 bytes
Concurrency Level: 25
Time taken for tests: 82.707270 seconds
Complete requests: 500000
Failed requests: 0
Write errors: 0
Kept alive: 500000
Total transferred: 1024000000 bytes
Requests per second: 6,045.42 [#/sec] (mean)
Time per request: 4.135 [ms] (mean)
Time per request: 0.165 [ms] (mean, across all concurrent requests)
Transfer rate: 12,381.02 [Kbytes/sec] received
-1 kb/s sent
12,381.02 kb/s total
---------------------------------------------------------------
---------------------------------------------------------------
HttpCore (NIO); version: 4.1-alpha2-SNAPSHOT
---------------------------------------------------------------
Server Software: HttpCore-NIO-Test/1.1
Server Hostname: localhost
Server Port: 8989
Document Path: http://localhost:8989/rnd?c=2048
Document Length: 2048 bytes
Concurrency Level: 25
Time taken for tests: 38.239003 seconds
Complete requests: 500000
Failed requests: 0
Write errors: 0
Kept alive: 500000
Total transferred: 1024000000 bytes
Requests per second: 13,075.65 [#/sec] (mean)
Time per request: 1.912 [ms] (mean)
Time per request: 0.076 [ms] (mean, across all concurrent requests)
Transfer rate: 26,778.94 [Kbytes/sec] received
-1 kb/s sent
26,778.94 kb/s total