Differences between revisions 11 and 12
Revision 11 as of 2013-04-11 09:28:15
Size: 4195
Editor: cust
Comment:
Revision 12 as of 2013-05-15 11:16:56
Size: 6785
Editor: 213
Comment:
Deletions are marked like this. Additions are marked like this.
Line 19: Line 19:
 * Beanchmark revision {{{r1466810}}}

 * !HttpClient: {{{4.3-BETA1}}}
 * Beanchmark revision {{{r1482761}}}

 * Apache !HttpCore: {{{4.3-BETA2}}}

 * Apache
!HttpClient: {{{4.3-BETA1}}}

 * Apache !HttpAsyncClient: {{{4.0-BETA4}}}
Line 34: Line 38:
java version "1.7.0_13"
Java(TM) SE Runtime Environment (build 1.7.0_13-b20)
Java HotSpot(TM) 64-Bit Server VM (build 23.7-b01, mixed mode)
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)
Line 43: Line 47:
HTTP agent: JRE HTTP 1.7.0_13
---------------------------------
1000000 POST requests
---------------------------------
Document URI: http://localhost:40966/echo
Document Length: 2048 bytes

Concurrency level: 50
Time taken for tests: 92.708 seconds
Complete requests: 979979
Failed requests: 20021
Content transferred: 2006996992
bytes
Requests per second: 10570.598 [#/sec] (mean)
---------------------------------
=================================
HTTP agent: Apache HttpClient 4 (ver: 4.3-beta1)
---------------------------------
1000000 POST requests
---------------------------------
Document URI: http://localhost:40966/echo
Document Length: 2048 bytes

Concurrency level: 50
Time taken for tests: 32.096 seconds
Complete requests: 1000000
Failed requests: 0
Content transferred: 2048000000 bytes
Requests per second: 31156.53 [#/sec] (mean)
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)
Line 75: Line 109:
Test did not complete under 3 minutes 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)
Line 82: Line 126:
Document URI: http://localhost:40966/echo
Document Length: 2048 bytes

Concurrency level: 50
Time taken for tests: 50.403 seconds
Complete requests: 1000000
Failed requests: 0
Content transferred: 2048000000 bytes
Requests per second: 19840.09 [#/sec] (mean)
---------------------------------
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)
---------------------------------
Line 99: Line 142:
HTTP agent: JRE HTTP 1.7.0_13
---------------------------------
100000 POST requests
---------------------------------
Document URI: http://localhost:60250/echo
Document Length: 356048 bytes

Concurrency level: 50
Time taken for tests: 38.596 seconds
Complete requests: 100000
Failed requests: 0
Content transferred: 35598696240 bytes
Requests per second: 2590.9421 [#/sec] (mean)
---------------------------------
=================================
HTTP agent: Apache HttpClient 4 (ver: 4.3-beta1)
---------------------------------
100000 POST requests
---------------------------------
Document URI: http://localhost:60250/echo
Document Length: 357392 bytes

Concurrency level: 50
Time taken for tests: 31.388 seconds
Complete requests: 100000
Failed requests: 0
Content transferred: 35679003264 bytes
Requests per second: 3185.931 [#/sec] (mean)
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)
Line 131: Line 204:
Test did not complete under 3 minutes 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)
Line 138: Line 221:
Document URI: http://localhost:60250/echo
Document Length: 358384 bytes

Concurrency level: 50
Time taken for tests: 36.13 seconds
Complete requests: 64355
Failed requests: 35645
Content transferred: 23042402480 bytes
Requests per second: 1781.2067 [#/sec] (mean)
---------------------------------
}}}
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)
---------------------------------
}}}

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)
---------------------------------

HttpClient3vsHttpClient4vsHttpCore (last edited 2014-05-23 14:01:06 by 80)