57個Web框架性能大測試-數據庫查詢 gemini,openresty,servlet分列前三,Json序列化 finagle,onion,gemini奪得前三:
http://www.techempower.com/benchmarks/#section=data-r4
Database access test (single query)
In this test, each request is processed by fetching a single row from a simple database table. That row is then serialized as a JSON response. Here is an example response:
HTTP/1.1 200 OK
Content-Length: 32
Content-Type: application/json; charset=UTF-8
Server: Example
Date: Wed, 17 Apr 2013 12:00:00 GMT
{"id":3217,"randomNumber":2149}
Results from EC2 m1.large
Peak database-access responses per second, EC2 large, single query
Framework |
Peak performance (higher is better) |
Cls |
Lng |
Plt |
FE |
DB |
Orm |
IA |
Errors |
|
go |
9,505 |
100.0% |
Plt |
Go |
Go |
Non |
My |
Raw |
Rea |
0 |
gemini |
9,055 |
95.3% |
Ful |
Jav |
Svt |
Res |
My |
Mcr |
Rea |
0 |
servlet |
8,908 |
93.7% |
Plt |
Jav |
Svt |
Res |
My |
Raw |
Rea |
0 |
onion |
8,753 |
92.1% |
Plt |
C |
Oni |
Non |
My |
Raw |
Rea |
233 |
openresty |
8,284 |
87.2% |
Plt |
Lua |
OpR |
ngx |
My |
Raw |
Rea |
0 |
vertx |
7,225 |
76.0% |
Plt |
Jav |
Nty |
Non |
Mo |
Raw |
Rea |
0 |
http-kit |
6,217 |
65.4% |
Plt |
Clj |
htk |
Non |
My |
Raw |
Rea |
0 |
wicket |
5,373 |
56.5% |
Ful |
Jav |
Svt |
Res |
My |
Ful |
Rea |
0 |
scalatra |
5,290 |
55.7% |
Mcr |
Sca |
Svt |
Res |
My |
Raw |
Rea |
0 |
spring |
4,855 |
51.1% |
Ful |
Jav |
Svt |
Res |
My |
Ful |
Rea |
0 |
compojure |
4,775 |
50.2% |
Mcr |
Clj |
Svt |
Res |
My |
Raw |
Rea |
0 |
unfiltered |
4,573 |
48.1% |
Mcr |
Sca |
Nty |
Non |
My |
Mcr |
Rea |
0 |
elli |
4,522 |
47.6% |
Plt |
Erl |
eli |
Non |
My |
Raw |
Rea |
0 |
nodejs |
4,460 |
46.9% |
Plt |
JS |
njs |
Non |
Mo |
Raw |
Rea |
0 |
yesod |
4,359 |
45.9% |
Mcr |
Hkl |
Wai |
Non |
Mo |
Raw |
Rea |
0 |
cowboy |
4,197 |
44.2% |
Plt |
Erl |
Cow |
Non |
My |
Raw |
Rea |
0 |
ringo |
3,901 |
41.0% |
Plt |
JS |
Rjs |
Non |
My |
Raw |
Rea |
0 |
yesod |
3,797 |
39.9% |
Mcr |
Hkl |
Wai |
Wrp |
My |
Raw |
Rea |
0 |
compojure |
3,768 |
39.6% |
Mcr |
Clj |
Svt |
Res |
My |
Mcr |
Rea |
0 |
dropwizard |
3,743 |
39.4% |
Ful |
Jav |
Jty |
Non |
My |
Ful |
Rea |
0 |
tapestry |
3,479 |
36.6% |
Ful |
Jav |
Svt |
Res |
My |
Ful |
Rea |
0 |
play-scala |
3,332 |
35.1% |
Ful |
Sca |
Nty |
Non |
Mo |
Raw |
Rea |
0 |
nodejs |
3,159 |
33.2% |
Plt |
JS |
njs |
Non |
Mo |
Ful |
Rea |
0 |
play-scala |
2,963 |
31.2% |
Ful |
Sca |
Nty |
Non |
My |
Ful |
Rea |
0 |
bottle |
2,941 |
30.9% |
Mcr |
Py |
Wsg |
Gun |
My |
Raw |
Rea |
0 |
php |
2,827 |
29.7% |
Plt |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
express |
2,770 |
29.1% |
Mcr |
JS |
njs |
Non |
Mo |
Ful |
Rea |
0 |
snap |
2,742 |
28.8% |
Mcr |
Hkl |
Snp |
Non |
My |
Ful |
Rea |
0 |
play1-siena |
2,689 |
28.3% |
Ful |
Jav |
Nty |
Non |
My |
Ful |
Rea |
0 |
nodejs |
2,381 |
25.0% |
Plt |
JS |
njs |
Non |
My |
Raw |
Rea |
0 |
grails |
2,317 |
24.4% |
Ful |
Grv |
Svt |
Res |
My |
Ful |
Rea |
0 |
finagle |
1,871 |
19.7% |
Mcr |
Sca |
Nty |
Non |
My |
Mcr |
Rea |
0 |
flask |
1,829 |
19.2% |
Mcr |
Py |
Wsg |
Gun |
My |
Raw |
Rea |
0 |
nodejs |
1,648 |
17.3% |
Plt |
JS |
njs |
Non |
My |
Ful |
Rea |
0 |
express |
1,516 |
15.9% |
Mcr |
JS |
njs |
Non |
My |
Ful |
Rea |
0 |
ringo |
1,415 |
14.9% |
Plt |
JS |
Rjs |
Non |
My |
Mcr |
Rea |
0 |
play-java |
1,376 |
14.5% |
Ful |
Jav |
Nty |
Non |
My |
Ful |
Rea |
0 |
kelp |
1,320 |
13.9% |
Ful |
Prl |
Plk |
Sta |
My |
Raw |
Rea |
0 |
play1 |
1,242 |
13.1% |
Ful |
Jav |
Nty |
Non |
My |
Ful |
Rea |
0 |
bottle |
1,156 |
12.2% |
Mcr |
Py |
Wsg |
Gun |
My |
Ful |
Rea |
0 |
sinatra |
1,018 |
10.7% |
Mcr |
Rby |
Rac |
Uni |
My |
Ful |
Rea |
0 |
micromvc |
972 |
10.2% |
Mcr |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
tornado |
956 |
10.1% |
Plt |
Py |
Tor |
Non |
Mo |
Raw |
Rea |
0 |
flask |
931 |
9.8% |
Mcr |
Py |
Wsg |
Uni |
My |
Ful |
Rea |
0 |
dancer |
902 |
9.5% |
Ful |
Prl |
Plk |
Sta |
My |
Raw |
Rea |
0 |
rails |
819 |
8.6% |
Ful |
Rby |
Rac |
Uni |
My |
Ful |
Str |
0 |
phalcon |
787 |
8.3% |
Ful |
PHP |
FPM |
ngx |
My |
Ful |
Rea |
0 |
django |
737 |
7.8% |
Ful |
Py |
Wsg |
Gun |
My |
Ful |
Str |
0 |
rails |
732 |
7.7% |
Ful |
Rby |
JRb |
Res |
My |
Ful |
Str |
0 |
phreeze |
710 |
7.5% |
Mcr |
PHP |
FPM |
ngx |
My |
Mcr |
Rea |
0 |
rails |
687 |
7.2% |
Ful |
Rby |
Rac |
Uni |
My |
Ful |
Rea |
0 |
django |
684 |
7.2% |
Ful |
Py |
Wsg |
Gun |
Pg |
Ful |
Rea |
0 |
mojolicious |
666 |
7.0% |
Ful |
Prl |
Plk |
Sta |
My |
Raw |
Rea |
0 |
rails |
619 |
6.5% |
Ful |
Rby |
JRb |
Res |
My |
Ful |
Rea |
0 |
php |
563 |
5.9% |
Plt |
PHP |
FPM |
ngx |
My |
Ful |
Rea |
0 |
lift |
558 |
5.9% |
Ful |
Sca |
Nty |
Non |
My |
Ful |
Rea |
1 |
codeigniter |
505 |
5.3% |
Ful |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
slim |
504 |
5.3% |
Mcr |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
spark |
421 |
4.4% |
Mcr |
Jav |
Svt |
Res |
My |
Ful |
Rea |
0 |
sinatra |
373 |
3.9% |
Mcr |
Rby |
JRb |
Res |
My |
Ful |
Rea |
0 |
kohana |
309 |
3.3% |
Ful |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
lithium |
266 |
2.8% |
Ful |
PHP |
FPM |
ngx |
My |
Ful |
Rea |
0 |
silex |
262 |
2.8% |
Mcr |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
laravel |
259 |
2.7% |
Ful |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
fuel |
232 |
2.4% |
Mcr |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
cake |
222 |
2.3% |
Ful |
PHP |
FPM |
ngx |
My |
Ful |
Rea |
0 |
silex |
167 |
1.8% |
Mcr |
PHP |
FPM |
ngx |
My |
Ful |
Rea |
0 |
symfony2 |
151 |
1.6% |
Ful |
PHP |
FPM |
ngx |
My |
Ful |
Rea |
0 |
Peak (bar chart) |
Data table |
Latency |
Results from dedicated hardware
Peak database-access responses per second, dedicated i7 hardware, single query
Framework |
Peak performance (higher is better) |
Cls |
Lng |
Plt |
FE |
DB |
Orm |
IA |
Errors |
|
gemini |
101,090 |
100.0% |
Ful |
Jav |
Svt |
Res |
My |
Mcr |
Rea |
0 |
openresty |
97,813 |
96.8% |
Plt |
Lua |
OpR |
ngx |
My |
Raw |
Rea |
0 |
servlet |
82,922 |
82.0% |
Plt |
Jav |
Svt |
Res |
My |
Raw |
Rea |
0 |
go |
79,672 |
78.8% |
Plt |
Go |
Go |
Non |
My |
Raw |
Rea |
0 |
http-kit |
57,363 |
56.7% |
Plt |
Clj |
htk |
Non |
My |
Raw |
Rea |
0 |
scalatra |
47,021 |
46.5% |
Mcr |
Sca |
Svt |
Res |
My |
Raw |
Rea |
0 |
wicket |
44,435 |
44.0% |
Ful |
Jav |
Svt |
Res |
My |
Ful |
Rea |
0 |
dropwizard |
35,954 |
35.6% |
Ful |
Jav |
Jty |
Non |
My |
Ful |
Rea |
0 |
spring |
35,765 |
35.4% |
Ful |
Jav |
Svt |
Res |
My |
Ful |
Rea |
34,762 |
onion |
34,985 |
34.6% |
Plt |
C |
Oni |
Non |
My |
Raw |
Rea |
254 |
yesod |
34,089 |
33.7% |
Mcr |
Hkl |
Wai |
Wrp |
My |
Raw |
Rea |
0 |
tapestry |
32,643 |
32.3% |
Ful |
Jav |
Svt |
Res |
My |
Ful |
Rea |
0 |
ringo |
31,996 |
31.7% |
Plt |
JS |
Rjs |
Non |
My |
Raw |
Rea |
0 |
compojure |
31,381 |
31.0% |
Mcr |
Clj |
Svt |
Res |
My |
Raw |
Rea |
0 |
elli |
31,187 |
30.9% |
Plt |
Erl |
eli |
Non |
My |
Raw |
Rea |
0 |
unfiltered |
30,271 |
29.9% |
Mcr |
Sca |
Nty |
Non |
My |
Mcr |
Rea |
0 |
nodejs |
28,856 |
28.5% |
Plt |
JS |
njs |
Non |
Mo |
Raw |
Rea |
0 |
cowboy |
28,677 |
28.4% |
Plt |
Erl |
Cow |
Non |
My |
Raw |
Rea |
0 |
compojure |
27,558 |
27.3% |
Mcr |
Clj |
Svt |
Res |
My |
Mcr |
Rea |
0 |
php |
27,285 |
27.0% |
Plt |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
vertx |
24,129 |
23.9% |
Plt |
Jav |
Nty |
Non |
Mo |
Raw |
Rea |
0 |
play-scala |
22,501 |
22.3% |
Ful |
Sca |
Nty |
Non |
My |
Ful |
Rea |
0 |
play-scala |
18,732 |
18.5% |
Ful |
Sca |
Nty |
Non |
Mo |
Raw |
Rea |
0 |
nodejs |
17,801 |
17.6% |
Plt |
JS |
njs |
Non |
Mo |
Ful |
Rea |
0 |
grails |
17,379 |
17.2% |
Ful |
Grv |
Svt |
Res |
My |
Ful |
Rea |
0 |
bottle |
16,596 |
16.4% |
Mcr |
Py |
Wsg |
Gun |
My |
Raw |
Rea |
0 |
express |
15,449 |
15.3% |
Mcr |
JS |
njs |
Non |
Mo |
Ful |
Rea |
0 |
finagle |
13,295 |
13.2% |
Mcr |
Sca |
Nty |
Non |
My |
Mcr |
Rea |
0 |
nodejs |
12,750 |
12.6% |
Plt |
JS |
njs |
Non |
My |
Raw |
Rea |
0 |
play1 |
10,127 |
10.0% |
Ful |
Jav |
Nty |
Non |
My |
Ful |
Rea |
0 |
play1-siena |
9,944 |
9.8% |
Ful |
Jav |
Nty |
Non |
My |
Ful |
Rea |
0 |
flask |
8,741 |
8.6% |
Mcr |
Py |
Wsg |
Gun |
My |
Raw |
Rea |
0 |
nodejs |
8,729 |
8.6% |
Plt |
JS |
njs |
Non |
My |
Ful |
Rea |
0 |
kelp |
8,544 |
8.5% |
Ful |
Prl |
Plk |
Sta |
My |
Raw |
Rea |
0 |
express |
8,095 |
8.0% |
Mcr |
JS |
njs |
Non |
My |
Ful |
Rea |
0 |
snap |
8,025 |
7.9% |
Mcr |
Hkl |
Snp |
Non |
My |
Ful |
Rea |
0 |
micromvc |
7,445 |
7.4% |
Mcr |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
play-java |
7,280 |
7.2% |
Ful |
Jav |
Nty |
Non |
My |
Ful |
Rea |
0 |
yesod |
6,308 |
6.2% |
Mcr |
Hkl |
Wai |
Non |
Mo |
Raw |
Rea |
0 |
tornado |
5,902 |
5.8% |
Plt |
Py |
Tor |
Non |
Mo |
Raw |
Rea |
0 |
ringo |
5,888 |
5.8% |
Plt |
JS |
Rjs |
Non |
My |
Mcr |
Rea |
0 |
phalcon |
5,470 |
5.4% |
Ful |
PHP |
FPM |
ngx |
My |
Ful |
Rea |
0 |
dancer |
5,419 |
5.4% |
Ful |
Prl |
Plk |
Sta |
My |
Raw |
Rea |
0 |
bottle |
5,018 |
5.0% |
Mcr |
Py |
Wsg |
Gun |
My |
Ful |
Rea |
0 |
sinatra |
4,539 |
4.5% |
Mcr |
Rby |
Rac |
Uni |
My |
Ful |
Rea |
0 |
php |
4,058 |
4.0% |
Plt |
PHP |
FPM |
ngx |
My |
Ful |
Rea |
0 |
flask |
3,872 |
3.8% |
Mcr |
Py |
Wsg |
Uni |
My |
Ful |
Rea |
0 |
mojolicious |
3,776 |
3.7% |
Ful |
Prl |
Plk |
Sta |
My |
Raw |
Rea |
0 |
codeigniter |
3,691 |
3.7% |
Ful |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
rails |
3,625 |
3.6% |
Ful |
Rby |
Rac |
Uni |
My |
Ful |
Str |
0 |
rails |
3,568 |
3.5% |
Ful |
Rby |
JRb |
Res |
My |
Ful |
Str |
0 |
slim |
3,529 |
3.5% |
Mcr |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
django |
3,408 |
3.4% |
Ful |
Py |
Wsg |
Gun |
My |
Ful |
Str |
0 |
lift |
3,363 |
3.3% |
Ful |
Sca |
Nty |
Non |
My |
Ful |
Rea |
11 |
django |
3,349 |
3.3% |
Ful |
Py |
Wsg |
Gun |
Pg |
Ful |
Rea |
0 |
rails |
3,026 |
3.0% |
Ful |
Rby |
JRb |
Res |
My |
Ful |
Rea |
0 |
rails |
2,991 |
3.0% |
Ful |
Rby |
Rac |
Uni |
My |
Ful |
Rea |
0 |
kohana |
2,157 |
2.1% |
Ful |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
phreeze |
1,771 |
1.8% |
Mcr |
PHP |
FPM |
ngx |
My |
Mcr |
Rea |
3 |
silex |
1,720 |
1.7% |
Mcr |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
laravel |
1,665 |
1.6% |
Ful |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
fuel |
1,406 |
1.4% |
Mcr |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
lithium |
1,405 |
1.4% |
Ful |
PHP |
FPM |
ngx |
My |
Ful |
Rea |
0 |
cake |
1,150 |
1.1% |
Ful |
PHP |
FPM |
ngx |
My |
Ful |
Rea |
0 |
silex |
931 |
0.9% |
Mcr |
PHP |
FPM |
ngx |
My |
Ful |
Rea |
0 |
spark |
841 |
0.8% |
Mcr |
Jav |
Svt |
Res |
My |
Ful |
Rea |
0 |
symfony2 |
707 |
0.7% |
Ful |
PHP |
FPM |
ngx |
My |
Ful |
Rea |
0 |
sinatra |
514 |
0.5% |
Mcr |
Rby |
JRb |
Res |
My |
Ful |
Rea |
0 |
Peak (bar chart) |
Data table |
Latency |
Results from Windows on EC2 m1.large
No data available for this test.
Peak (bar chart) |
Data table |
Latency |
Database access test (multiple queries)
In this test, each request is processed by fetching multiple rows from a simple database table and serializing these rows as a JSON response. The test is run multiple times: testing 1, 5, 10, 15, and 20 queries per request. All tests are run at 256 concurrency.
Example response for 10 queries:
HTTP/1.1 200 OK
Content-Length: 315
Content-Type: application/json; charset=UTF-8
Server: Example
Date: Wed, 17 Apr 2013 12:00:00 GMT
[{"id":4174,"randomNumber":331},{"id":51,"randomNumber":6544},{"id":4462,"randomNumber":952},{"id":2221,"randomNumber":532},{"id":9276,"randomNumber":3097},{"id":3056,"randomNumber":7293},{"id":6964,"randomNumber":620},{"id":675,"randomNumber":6601},{"id":8414,"randomNumber":6569},{"id":2753,"randomNumber":4065}]
Results from EC2 m1.large
Responses per second at 20 queries per request, EC2 large
Framework |
Performance (higher is better) |
Cls |
Lng |
Plt |
FE |
DB |
Orm |
IA |
Errors |
|
onion |
695 |
100.0% |
Plt |
C |
Oni |
Non |
My |
Raw |
Rea |
115 |
gemini |
669 |
96.3% |
Ful |
Jav |
Svt |
Res |
My |
Mcr |
Rea |
0 |
servlet |
647 |
93.1% |
Plt |
Jav |
Svt |
Res |
My |
Raw |
Rea |
0 |
go |
628 |
90.4% |
Plt |
Go |
Go |
Non |
My |
Raw |
Rea |
0 |
php |
608 |
87.5% |
Plt |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
phreeze |
601 |
86.5% |
Mcr |
PHP |
FPM |
ngx |
My |
Mcr |
Rea |
0 |
openresty |
590 |
84.9% |
Plt |
Lua |
OpR |
ngx |
My |
Raw |
Rea |
0 |
wicket |
580 |
83.5% |
Ful |
Jav |
Svt |
Res |
My |
Ful |
Rea |
0 |
tapestry |
578 |
83.2% |
Ful |
Jav |
Svt |
Res |
My |
Ful |
Rea |
0 |
ringo |
567 |
81.6% |
Plt |
JS |
Rjs |
Non |
My |
Raw |
Rea |
0 |
spring |
566 |
81.4% |
Ful |
Jav |
Svt |
Res |
My |
Ful |
Rea |
0 |
dropwizard |
563 |
81.0% |
Ful |
Jav |
Jty |
Non |
My |
Ful |
Rea |
0 |
nodejs |
557 |
80.1% |
Plt |
JS |
njs |
Non |
Mo |
Raw |
Rea |
0 |
play-scala |
556 |
80.0% |
Ful |
Sca |
Nty |
Non |
Mo |
Raw |
Rea |
0 |
vertx |
552 |
79.4% |
Plt |
Jav |
Nty |
Non |
Mo |
Raw |
Rea |
0 |
scalatra |
547 |
78.7% |
Mcr |
Sca |
Svt |
Res |
My |
Raw |
Rea |
0 |
play1-siena |
533 |
76.7% |
Ful |
Jav |
Nty |
Non |
My |
Ful |
Rea |
0 |
http-kit |
432 |
62.2% |
Plt |
Clj |
htk |
Non |
My |
Raw |
Rea |
0 |
bottle |
405 |
58.3% |
Mcr |
Py |
Wsg |
Gun |
My |
Raw |
Rea |
0 |
lift |
403 |
58.0% |
Ful |
Sca |
Nty |
Non |
My |
Ful |
Rea |
0 |
compojure |
386 |
55.5% |
Mcr |
Clj |
Svt |
Res |
My |
Raw |
Rea |
0 |
grails |
385 |
55.4% |
Ful |
Grv |
Svt |
Res |
My |
Ful |
Rea |
0 |
flask |
337 |
48.5% |
Mcr |
Py |
Wsg |
Gun |
My |
Raw |
Rea |
4 |
yesod |
332 |
47.8% |
Mcr |
Hkl |
Wai |
Non |
Mo |
Raw |
Rea |
0 |
dancer |
314 |
45.2% |
Ful |
Prl |
Plk |
Sta |
My |
Raw |
Rea |
0 |
elli |
307 |
44.2% |
Plt |
Erl |
eli |
Non |
My |
Raw |
Rea |
0 |
play-scala |
306 |
44.0% |
Ful |
Sca |
Nty |
Non |
My |
Ful |
Rea |
0 |
unfiltered |
305 |
43.9% |
Mcr |
Sca |
Nty |
Non |
My |
Mcr |
Rea |
0 |
mojolicious |
303 |
43.6% |
Ful |
Prl |
Plk |
Sta |
My |
Raw |
Rea |
0 |
kelp |
300 |
43.2% |
Ful |
Prl |
Plk |
Sta |
My |
Raw |
Rea |
0 |
cowboy |
298 |
42.9% |
Plt |
Erl |
Cow |
Non |
My |
Raw |
Rea |
0 |
compojure |
285 |
41.0% |
Mcr |
Clj |
Svt |
Res |
My |
Mcr |
Rea |
0 |
spark |
280 |
40.3% |
Mcr |
Jav |
Svt |
Res |
My |
Ful |
Rea |
0 |
nodejs |
248 |
35.7% |
Plt |
JS |
njs |
Non |
Mo |
Ful |
Rea |
0 |
play-java |
245 |
35.3% |
Ful |
Jav |
Nty |
Non |
My |
Ful |
Rea |
0 |
play1 |
242 |
34.8% |
Ful |
Jav |
Nty |
Non |
My |
Ful |
Rea |
0 |
express |
235 |
33.8% |
Mcr |
JS |
njs |
Non |
Mo |
Ful |
Rea |
0 |
codeigniter |
232 |
33.4% |
Ful |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
micromvc |
231 |
33.2% |
Mcr |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
yesod |
226 |
32.5% |
Mcr |
Hkl |
Wai |
Wrp |
My |
Raw |
Rea |
0 |
phalcon |
186 |
26.8% |
Ful |
PHP |
FPM |
ngx |
My |
Ful |
Rea |
0 |
nodejs |
183 |
26.3% |
Plt |
JS |
njs |
Non |
My |
Raw |
Rea |
0 |
slim |
180 |
25.9% |
Mcr |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
silex |
177 |
25.5% |
Mcr |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
php |
171 |
24.6% |
Plt |
PHP |
FPM |
ngx |
My |
Ful |
Rea |
0 |
kohana |
167 |
24.0% |
Ful |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
snap |
144 |
20.7% |
Mcr |
Hkl |
Snp |
Non |
My |
Ful |
Rea |
0 |
sinatra |
138 |
19.9% |
Mcr |
Rby |
Rac |
Uni |
My |
Ful |
Rea |
0 |
rails |
123 |
17.7% |
Ful |
Rby |
Rac |
Uni |
My |
Ful |
Str |
0 |
rails |
118 |
17.0% |
Ful |
Rby |
Rac |
Uni |
My |
Ful |
Rea |
0 |
laravel |
112 |
16.1% |
Ful |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
finagle |
108 |
15.5% |
Mcr |
Sca |
Nty |
Non |
My |
Mcr |
Rea |
0 |
tornado |
108 |
15.5% |
Plt |
Py |
Tor |
Non |
Mo |
Raw |
Rea |
0 |
bottle |
104 |
15.0% |
Mcr |
Py |
Wsg |
Gun |
My |
Ful |
Rea |
1,235 |
rails |
104 |
15.0% |
Ful |
Rby |
JRb |
Res |
My |
Ful |
Str |
0 |
flask |
98 |
14.1% |
Mcr |
Py |
Wsg |
Uni |
My |
Ful |
Rea |
1,551 |
rails |
98 |
14.1% |
Ful |
Rby |
JRb |
Res |
My |
Ful |
Rea |
0 |
sinatra |
94 |
13.5% |
Mcr |
Rby |
JRb |
Res |
My |
Ful |
Rea |
0 |
silex |
93 |
13.4% |
Mcr |
PHP |
FPM |
ngx |
My |
Ful |
Rea |
0 |
cake |
92 |
13.2% |
Ful |
PHP |
FPM |
ngx |
My |
Ful |
Rea |
0 |
fuel |
90 |
12.9% |
Mcr |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
symfony2 |
86 |
12.4% |
Ful |
PHP |
FPM |
ngx |
My |
Ful |
Rea |
0 |
ringo |
85 |
12.2% |
Plt |
JS |
Rjs |
Non |
My |
Mcr |
Rea |
0 |
django |
76 |
10.9% |
Ful |
Py |
Wsg |
Gun |
Pg |
Ful |
Rea |
1,886 |
django |
76 |
10.9% |
Ful |
Py |
Wsg |
Gun |
My |
Ful |
Str |
1,753 |
lithium |
58 |
8.3% |
Ful |
PHP |
FPM |
ngx |
My |
Ful |
Rea |
0 |
nodejs |
53 |
7.6% |
Plt |
JS |
njs |
Non |
My |
Ful |
Rea |
0 |
express |
52 |
7.5% |
Mcr |
JS |
njs |
Non |
My |
Ful |
Rea |
0 |
20-queries (bar) |
Data table |
Latency |
Results from dedicated hardware
Responses per second at 20 queries per request, dedicated i7 hardware
Framework |
Performance (higher is better) |
Cls |
Lng |
Plt |
FE |
DB |
Orm |
IA |
Errors |
|
gemini |
7,209 |
100.0% |
Ful |
Jav |
Svt |
Res |
My |
Mcr |
Rea |
0 |
servlet |
6,316 |
87.6% |
Plt |
Jav |
Svt |
Res |
My |
Raw |
Rea |
0 |
openresty |
6,182 |
85.8% |
Plt |
Lua |
OpR |
ngx |
My |
Raw |
Rea |
0 |
dropwizard |
6,127 |
85.0% |
Ful |
Jav |
Jty |
Non |
My |
Ful |
Rea |
0 |
php |
6,042 |
83.8% |
Plt |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
ringo |
4,927 |
68.3% |
Plt |
JS |
Rjs |
Non |
My |
Raw |
Rea |
0 |
tapestry |
4,862 |
67.4% |
Ful |
Jav |
Svt |
Res |
My |
Ful |
Rea |
0 |
wicket |
4,439 |
61.6% |
Ful |
Jav |
Svt |
Res |
My |
Ful |
Rea |
0 |
spring |
4,253 |
59.0% |
Ful |
Jav |
Svt |
Res |
My |
Ful |
Rea |
0 |
scalatra |
3,876 |
53.8% |
Mcr |
Sca |
Svt |
Res |
My |
Raw |
Rea |
0 |
nodejs |
3,766 |
52.2% |
Plt |
JS |
njs |
Non |
Mo |
Raw |
Rea |
0 |
go |
3,275 |
45.4% |
Plt |
Go |
Go |
Non |
My |
Raw |
Rea |
0 |
grails |
2,899 |
40.2% |
Ful |
Grv |
Svt |
Res |
My |
Ful |
Rea |
0 |
http-kit |
2,808 |
39.0% |
Plt |
Clj |
htk |
Non |
My |
Raw |
Rea |
0 |
lift |
2,233 |
31.0% |
Ful |
Sca |
Nty |
Non |
My |
Ful |
Rea |
0 |
micromvc |
2,072 |
28.7% |
Mcr |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
play-java |
2,059 |
28.6% |
Ful |
Jav |
Nty |
Non |
My |
Ful |
Rea |
0 |
bottle |
2,025 |
28.1% |
Mcr |
Py |
Wsg |
Gun |
My |
Raw |
Rea |
0 |
elli |
1,995 |
27.7% |
Plt |
Erl |
eli |
Non |
My |
Raw |
Rea |
0 |
cowboy |
1,985 |
27.5% |
Plt |
Erl |
Cow |
Non |
My |
Raw |
Rea |
0 |
codeigniter |
1,944 |
27.0% |
Ful |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
yesod |
1,915 |
26.6% |
Mcr |
Hkl |
Wai |
Wrp |
My |
Raw |
Rea |
0 |
compojure |
1,805 |
25.0% |
Mcr |
Clj |
Svt |
Res |
My |
Mcr |
Rea |
0 |
flask |
1,706 |
23.7% |
Mcr |
Py |
Wsg |
Gun |
My |
Raw |
Rea |
0 |
play-scala |
1,696 |
23.5% |
Ful |
Sca |
Nty |
Non |
My |
Ful |
Rea |
0 |
onion |
1,650 |
22.9% |
Plt |
C |
Oni |
Non |
My |
Raw |
Rea |
231 |
unfiltered |
1,649 |
22.9% |
Mcr |
Sca |
Nty |
Non |
My |
Mcr |
Rea |
0 |
play-scala |
1,591 |
22.1% |
Ful |
Sca |
Nty |
Non |
Mo |
Raw |
Rea |
0 |
nodejs |
1,562 |
21.7% |
Plt |
JS |
njs |
Non |
Mo |
Ful |
Rea |
0 |
yesod |
1,527 |
21.2% |
Mcr |
Hkl |
Wai |
Non |
Mo |
Raw |
Rea |
0 |
express |
1,466 |
20.3% |
Mcr |
JS |
njs |
Non |
Mo |
Ful |
Rea |
0 |
play1-siena |
1,443 |
20.0% |
Ful |
Jav |
Nty |
Non |
My |
Ful |
Rea |
0 |
slim |
1,377 |
19.1% |
Mcr |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
kohana |
1,335 |
18.5% |
Ful |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
phalcon |
1,331 |
18.5% |
Ful |
PHP |
FPM |
ngx |
My |
Ful |
Rea |
0 |
silex |
1,312 |
18.2% |
Mcr |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
php |
1,263 |
17.5% |
Plt |
PHP |
FPM |
ngx |
My |
Ful |
Rea |
0 |
play1 |
1,215 |
16.9% |
Ful |
Jav |
Nty |
Non |
My |
Ful |
Rea |
0 |
vertx |
1,057 |
14.7% |
Plt |
Jav |
Nty |
Non |
Mo |
Raw |
Rea |
0 |
nodejs |
946 |
13.1% |
Plt |
JS |
njs |
Non |
My |
Raw |
Rea |
0 |
compojure |
899 |
12.5% |
Mcr |
Clj |
Svt |
Res |
My |
Raw |
Rea |
0 |
dancer |
861 |
11.9% |
Ful |
Prl |
Plk |
Sta |
My |
Raw |
Rea |
0 |
laravel |
828 |
11.5% |
Ful |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
spark |
774 |
10.7% |
Mcr |
Jav |
Svt |
Res |
My |
Ful |
Rea |
0 |
finagle |
736 |
10.2% |
Mcr |
Sca |
Nty |
Non |
My |
Mcr |
Rea |
0 |
tornado |
654 |
9.1% |
Plt |
Py |
Tor |
Non |
Mo |
Raw |
Rea |
0 |
silex |
616 |
8.5% |
Mcr |
PHP |
FPM |
ngx |
My |
Ful |
Rea |
0 |
fuel |
612 |
8.5% |
Mcr |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
cake |
585 |
8.1% |
Ful |
PHP |
FPM |
ngx |
My |
Ful |
Rea |
0 |
sinatra |
579 |
8.0% |
Mcr |
Rby |
Rac |
Uni |
My |
Ful |
Rea |
0 |
snap |
519 |
7.2% |
Mcr |
Hkl |
Snp |
Non |
My |
Ful |
Rea |
0 |
nodejs |
518 |
7.2% |
Plt |
JS |
njs |
Non |
My |
Ful |
Rea |
0 |
express |
517 |
7.2% |
Mcr |
JS |
njs |
Non |
My |
Ful |
Rea |
0 |
rails |
515 |
7.1% |
Ful |
Rby |
JRb |
Res |
My |
Ful |
Str |
0 |
rails |
509 |
7.1% |
Ful |
Rby |
Rac |
Uni |
My |
Ful |
Str |
0 |
symfony2 |
506 |
7.0% |
Ful |
PHP |
FPM |
ngx |
My |
Ful |
Rea |
0 |
rails |
490 |
6.8% |
Ful |
Rby |
JRb |
Res |
My |
Ful |
Rea |
0 |
rails |
483 |
6.7% |
Ful |
Rby |
Rac |
Uni |
My |
Ful |
Rea |
0 |
bottle |
476 |
6.6% |
Mcr |
Py |
Wsg |
Gun |
My |
Ful |
Rea |
0 |
flask |
443 |
6.1% |
Mcr |
Py |
Wsg |
Uni |
My |
Ful |
Rea |
0 |
mojolicious |
421 |
5.8% |
Ful |
Prl |
Plk |
Sta |
My |
Raw |
Rea |
0 |
kelp |
418 |
5.8% |
Ful |
Prl |
Plk |
Sta |
My |
Raw |
Rea |
0 |
phreeze |
414 |
5.7% |
Mcr |
PHP |
FPM |
ngx |
My |
Mcr |
Rea |
0 |
django |
382 |
5.3% |
Ful |
Py |
Wsg |
Gun |
Pg |
Ful |
Rea |
0 |
lithium |
372 |
5.2% |
Ful |
PHP |
FPM |
ngx |
My |
Ful |
Rea |
0 |
django |
365 |
5.1% |
Ful |
Py |
Wsg |
Gun |
My |
Ful |
Str |
0 |
sinatra |
319 |
4.4% |
Mcr |
Rby |
JRb |
Res |
My |
Ful |
Rea |
0 |
ringo |
266 |
3.7% |
Plt |
JS |
Rjs |
Non |
My |
Mcr |
Rea |
0 |
20-queries (bar) |
Data table |
Latency |
Results from Windows on EC2 m1.large
No data available for this test.
20-queries (bar) |
Data table |
Latency |
Database update test
This test exercises database writes. Each request is processed by fetching multiple rows from a simple database table, converting the rows to in-memory objects, modifying one attribute of each object in memory, updating each associated row in the database individually, and then serializing the list of objects as a JSON response. The test is run multiple times: testing 1, 5, 10, 15, and 20 updates per request. Note that the number of statements per request is twice the number of updates since each update is paired with one query to fetch the object. All tests are run at 256 concurrency.
The response is analogous to the multiple-query test. Example response for 10 updates:
HTTP/1.1 200 OK
Content-Length: 315
Content-Type: application/json; charset=UTF-8
Server: Example
Date: Wed, 17 Apr 2013 12:00:00 GMT
[{"id":4174,"randomNumber":331},{"id":51,"randomNumber":6544},{"id":4462,"randomNumber":952},{"id":2221,"randomNumber":532},{"id":9276,"randomNumber":3097},{"id":3056,"randomNumber":7293},{"id":6964,"randomNumber":620},{"id":675,"randomNumber":6601},{"id":8414,"randomNumber":6569},{"id":2753,"randomNumber":4065}]
Results from EC2 m1.large
No data available for this test.
20-updates (bar) |
Data table |
Latency |
Results from dedicated hardware
No data available for this test.
20-updates (bar) |
Data table |
Latency |
Results from Windows on EC2 m1.large
No data available for this test.
20-updates (bar) |
Data table |
Latency |
Fortunes test
In this test, the framework's ORM is used to fetch all rows from a database table containing an unknown number of Unix fortune cookie messages (the table has 12 rows, but the code cannot have foreknowledge of the table's size, unlike previous tests). An additional fortune cookie message is inserted into the list at runtime and then the list is sorted by the message text. Finally, the list is delivered to the client using a server-side HTML template. The message text must be considered untrusted and properly escaped and the UTF-8 fortune messages must be rendered properly.
Whitespace is optional and may comply with the framework's best practices.
Example response:
HTTP/1.1 200 OK
Content-Length: 1180
Content-Type: text/html; charset=UTF-8
Server: Example
Date: Wed, 17 Apr 2013 12:00:00 GMT
<!DOCTYPE html><html><head><title>Fortunes</title></head><body><table><tr><th>id</th><th>message</th></tr><tr><td>11</td><td><script>alert("This should not be displayed in a browser alert box.");</script></td></tr><tr><td>4</td><td>A bad random number generator: 1, 1, 1, 1, 1, 4.33e+67, 1, 1, 1</td></tr><tr><td>5</td><td>A computer program does what you tell it to do, not what you want it to do.</td></tr><tr><td>2</td><td>A computer scientist is someone who fixes things that aren't broken.</td></tr><tr><td>8</td><td>A list is only as strong as its weakest link. — Donald Knuth</td></tr><tr><td>0</td><td>Additional fortune added at request time.</td></tr><tr><td>3</td><td>After enough decimal places, nobody gives a damn.</td></tr><tr><td>7</td><td>Any program that runs right is obsolete.</td></tr><tr><td>10</td><td>Computers make very fast, very accurate mistakes.</td></tr><tr><td>6</td><td>Emacs is a nice operating system, but I prefer UNIX. — Tom Christaensen</td></tr><tr><td>9</td><td>Feature: A bug with seniority.</td></tr><tr><td>1</td><td>fortune: No such file or directory</td></tr><tr><td>12</td><td>フレームワークのベンチマーク</td></tr></table></body></html>
Results from EC2 m1.large
Peak fortunes responses per second, EC2 large
Framework |
Peak performance (higher is better) |
Cls |
Lng |
Plt |
FE |
DB |
Orm |
IA |
Errors |
|
servlet |
7,343 |
100.0% |
Plt |
Jav |
Svt |
Res |
My |
Raw |
Rea |
0 |
gemini |
6,149 |
83.7% |
Ful |
Jav |
Svt |
Res |
My |
Mcr |
Rea |
0 |
go |
4,273 |
58.2% |
Plt |
Go |
Go |
Non |
My |
Raw |
Rea |
0 |
compojure |
3,289 |
44.8% |
Mcr |
Clj |
Svt |
Res |
My |
Mcr |
Rea |
0 |
spring |
2,873 |
39.1% |
Ful |
Jav |
Svt |
Res |
My |
Ful |
Rea |
0 |
play-scala |
2,515 |
34.3% |
Ful |
Sca |
Nty |
Non |
My |
Ful |
Rea |
0 |
php |
2,262 |
30.8% |
Plt |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
express |
1,172 |
16.0% |
Mcr |
JS |
njs |
Non |
My |
Ful |
Rea |
0 |
ringo |
1,066 |
14.5% |
Plt |
JS |
Rjs |
Non |
My |
Raw |
Rea |
0 |
phalcon |
685 |
9.3% |
Ful |
PHP |
FPM |
ngx |
My |
Ful |
Rea |
0 |
codeigniter |
464 |
6.3% |
Ful |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
rails |
461 |
6.3% |
Ful |
Rby |
Rac |
Uni |
My |
Ful |
Rea |
0 |
rails |
442 |
6.0% |
Ful |
Rby |
JRb |
Res |
My |
Ful |
Rea |
0 |
django |
363 |
4.9% |
Ful |
Py |
Wsg |
Gun |
Pg |
Ful |
Rea |
0 |
kohana |
296 |
4.0% |
Ful |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
laravel |
217 |
3.0% |
Ful |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
fuel |
167 |
2.3% |
Mcr |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
ringo |
144 |
2.0% |
Plt |
JS |
Rjs |
Non |
My |
Mcr |
Rea |
0 |
Peak (bar chart) |
Data table |
Latency |
Results from dedicated hardware
Peak fortunes responses per second, dedicated i7 hardware
Framework |
Peak performance (higher is better) |
Cls |
Lng |
Plt |
FE |
DB |
Orm |
IA |
Errors |
|
servlet |
60,138 |
100.0% |
Plt |
Jav |
Svt |
Res |
My |
Raw |
Rea |
0 |
gemini |
57,166 |
95.1% |
Ful |
Jav |
Svt |
Res |
My |
Mcr |
Rea |
0 |
go |
22,975 |
38.2% |
Plt |
Go |
Go |
Non |
My |
Raw |
Rea |
0 |
compojure |
21,915 |
36.4% |
Mcr |
Clj |
Svt |
Res |
My |
Mcr |
Rea |
0 |
php |
20,108 |
33.4% |
Plt |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
play-scala |
13,558 |
22.5% |
Ful |
Sca |
Nty |
Non |
My |
Ful |
Rea |
0 |
spring |
10,830 |
18.0% |
Ful |
Jav |
Svt |
Res |
My |
Ful |
Rea |
0 |
express |
5,776 |
9.6% |
Mcr |
JS |
njs |
Non |
My |
Ful |
Rea |
0 |
ringo |
5,538 |
9.2% |
Plt |
JS |
Rjs |
Non |
My |
Raw |
Rea |
0 |
phalcon |
4,852 |
8.1% |
Ful |
PHP |
FPM |
ngx |
My |
Ful |
Rea |
0 |
codeigniter |
3,420 |
5.7% |
Ful |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
rails |
2,393 |
4.0% |
Ful |
Rby |
JRb |
Res |
My |
Ful |
Rea |
0 |
kohana |
2,092 |
3.5% |
Ful |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
rails |
1,913 |
3.2% |
Ful |
Rby |
Rac |
Uni |
My |
Ful |
Rea |
0 |
django |
1,793 |
3.0% |
Ful |
Py |
Wsg |
Gun |
Pg |
Ful |
Rea |
0 |
laravel |
1,426 |
2.4% |
Ful |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
fuel |
1,035 |
1.7% |
Mcr |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
ringo |
444 |
0.7% |
Plt |
JS |
Rjs |
Non |
My |
Mcr |
Rea |
0 |
Peak (bar chart) |
Data table |
Latency |
Results from Windows on EC2 m1.large
No data available for this test.
Peak (bar chart) |
Data table |
Latency |
JSON serialization test
In this test, each response is a JSON serialization of a freshly-instantiated object that maps the key message to the value Hello, World! Example response:
HTTP/1.1 200 OK
Content-Type: application/json; charset=UTF-8
Content-Length: 28
Server: Example
Date: Wed, 17 Apr 2013 12:00:00 GMT
{"message":"Hello, World!"}
Results from EC2 m1.large
Peak JSON responses per second, EC2 large
Framework |
Peak performance (higher is better) |
Cls |
Lng |
Plt |
FE |
DB |
Orm |
IA |
Errors |
|
onion |
52,379 |
100.0% |
Plt |
C |
Oni |
Non |
My |
Raw |
Rea |
0 |
netty |
40,852 |
78.0% |
Plt |
Jav |
Nty |
Non |
My |
Raw |
Rea |
0 |
openresty |
35,627 |
68.0% |
Plt |
Lua |
OpR |
ngx |
My |
Raw |
Rea |
0 |
unfiltered |
32,491 |
62.0% |
Mcr |
Sca |
Nty |
Non |
My |
Mcr |
Rea |
0 |
vertx |
27,893 |
53.3% |
Plt |
Jav |
Nty |
Non |
Mo |
Raw |
Rea |
0 |
servlet |
26,971 |
51.5% |
Plt |
Jav |
Svt |
Res |
My |
Raw |
Rea |
908 |
finagle |
26,385 |
50.4% |
Mcr |
Sca |
Nty |
Non |
My |
Mcr |
Rea |
0 |
gemini |
25,853 |
49.4% |
Ful |
Jav |
Svt |
Res |
My |
Mcr |
Rea |
0 |
go |
25,736 |
49.1% |
Plt |
Go |
Go |
Non |
My |
Raw |
Rea |
0 |
spark |
22,389 |
42.7% |
Mcr |
Jav |
Svt |
Res |
My |
Ful |
Rea |
368 |
http-kit |
21,804 |
41.6% |
Plt |
Clj |
htk |
Non |
My |
Raw |
Rea |
0 |
wai |
19,557 |
37.3% |
Plt |
Hkl |
Wai |
Wrp |
My |
Ful |
Rea |
0 |
elli |
18,536 |
35.4% |
Plt |
Erl |
eli |
Non |
My |
Raw |
Rea |
0 |
cowboy |
14,694 |
28.1% |
Plt |
Erl |
Cow |
Non |
My |
Raw |
Rea |
0 |
webgo |
14,638 |
27.9% |
Mcr |
Go |
Go |
Non |
My |
Ful |
Rea |
0 |
grizzly |
14,553 |
27.8% |
Mcr |
Jav |
Jty |
Res |
My |
Ful |
Rea |
0 |
yesod |
14,014 |
26.8% |
Mcr |
Hkl |
Wai |
Wrp |
My |
Raw |
Rea |
0 |
wicket |
13,104 |
25.0% |
Ful |
Jav |
Svt |
Res |
My |
Ful |
Rea |
0 |
compojure |
12,511 |
23.9% |
Mcr |
Clj |
Svt |
Res |
My |
Mcr |
Rea |
601 |
dropwizard |
11,815 |
22.6% |
Ful |
Jav |
Jty |
Non |
My |
Ful |
Rea |
0 |
tapestry |
11,365 |
21.7% |
Ful |
Jav |
Svt |
Res |
My |
Ful |
Rea |
26 |
spring |
11,011 |
21.0% |
Ful |
Jav |
Svt |
Res |
My |
Ful |
Rea |
0 |
nodejs |
10,864 |
20.7% |
Plt |
JS |
njs |
Non |
Mo |
Ful |
Rea |
0 |
scalatra |
10,737 |
20.5% |
Mcr |
Sca |
Svt |
Res |
My |
Ful |
Rea |
0 |
play1-siena |
9,129 |
17.4% |
Ful |
Jav |
Nty |
Non |
My |
Ful |
Rea |
283 |
play-scala |
9,007 |
17.2% |
Ful |
Sca |
Nty |
Non |
My |
Ful |
Rea |
0 |
bottle |
8,200 |
15.7% |
Mcr |
Py |
Wsg |
Gun |
My |
Ful |
Rea |
0 |
snap |
7,896 |
15.1% |
Mcr |
Hkl |
Snp |
Non |
My |
Ful |
Rea |
0 |
rack |
7,811 |
14.9% |
Plt |
Rby |
Rac |
Uni |
My |
Ful |
Rea |
0 |
express |
7,460 |
14.2% |
Mcr |
JS |
njs |
Non |
My |
Ful |
Rea |
0 |
ringo |
6,580 |
12.6% |
Plt |
JS |
Rjs |
Non |
My |
Raw |
Rea |
0 |
ringo |
5,864 |
11.2% |
Plt |
JS |
Rjs |
Non |
My |
Mcr |
Rea |
0 |
lift |
5,376 |
10.3% |
Ful |
Sca |
Nty |
Non |
My |
Ful |
Rea |
0 |
rack |
4,859 |
9.3% |
Plt |
Rby |
JRb |
Res |
My |
Ful |
Rea |
0 |
play-java |
4,765 |
9.1% |
Ful |
Jav |
Nty |
Non |
My |
Ful |
Rea |
0 |
grails |
4,471 |
8.5% |
Ful |
Grv |
Svt |
Res |
My |
Ful |
Rea |
0 |
django |
3,998 |
7.6% |
Ful |
Py |
Wsg |
Gun |
My |
Ful |
Str |
0 |
php |
3,992 |
7.6% |
Plt |
PHP |
FPM |
ngx |
My |
Ful |
Rea |
0 |
wsgi |
3,384 |
6.5% |
Plt |
Py |
Wsg |
Gun |
My |
Raw |
Rea |
0 |
flask |
3,352 |
6.4% |
Mcr |
Py |
Wsg |
Uni |
My |
Ful |
Rea |
0 |
tornado |
2,150 |
4.1% |
Plt |
Py |
Tor |
Non |
Mo |
Ful |
Rea |
0 |
phalcon |
1,911 |
3.6% |
Ful |
PHP |
FPM |
ngx |
My |
Ful |
Rea |
0 |
kelp |
1,840 |
3.5% |
Ful |
Prl |
Plk |
Sta |
My |
Ful |
Rea |
0 |
play1 |
1,756 |
3.4% |
Ful |
Jav |
Nty |
Non |
My |
Ful |
Rea |
0 |
micromvc |
1,683 |
3.2% |
Mcr |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
django |
1,620 |
3.1% |
Ful |
Py |
Wsg |
Gun |
Pg |
Ful |
Rea |
0 |
rails |
1,189 |
2.3% |
Ful |
Rby |
Rac |
Uni |
My |
Ful |
Str |
0 |
phreeze |
1,093 |
2.1% |
Mcr |
PHP |
FPM |
ngx |
My |
Mcr |
Rea |
0 |
dancer |
1,081 |
2.1% |
Ful |
Prl |
Plk |
Sta |
My |
Ful |
Rea |
0 |
rails |
1,019 |
1.9% |
Ful |
Rby |
JRb |
Res |
My |
Ful |
Str |
0 |
rails |
957 |
1.8% |
Ful |
Rby |
Rac |
Uni |
My |
Ful |
Rea |
0 |
sinatra |
932 |
1.8% |
Mcr |
Rby |
Rac |
Uni |
My |
Ful |
Rea |
0 |
rails |
852 |
1.6% |
Ful |
Rby |
JRb |
Res |
My |
Ful |
Rea |
0 |
mojolicious |
759 |
1.4% |
Ful |
Prl |
Plk |
Sta |
My |
Ful |
Rea |
0 |
slim |
686 |
1.3% |
Mcr |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
sinatra |
611 |
1.2% |
Mcr |
Rby |
JRb |
Res |
My |
Ful |
Rea |
0 |
codeigniter |
578 |
1.1% |
Ful |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
kohana |
508 |
1.0% |
Ful |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
lithium |
388 |
0.7% |
Ful |
PHP |
FPM |
ngx |
My |
Ful |
Rea |
0 |
silex |
387 |
0.7% |
Mcr |
PHP |
FPM |
ngx |
My |
Ful |
Rea |
0 |
laravel |
358 |
0.7% |
Ful |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
fuel |
340 |
0.6% |
Mcr |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
cake |
241 |
0.5% |
Ful |
PHP |
FPM |
ngx |
My |
Ful |
Rea |
0 |
symfony2 |
190 |
0.4% |
Ful |
PHP |
FPM |
ngx |
My |
Ful |
Rea |
0 |
Peak (bar chart) |
Data table |
Latency |
Results from dedicated hardware
Peak JSON responses per second, dedicated i7 hardware
Framework |
Peak performance (higher is better) |
Cls |
Lng |
Plt |
FE |
DB |
Orm |
IA |
Errors |
|
finagle |
232,464 |
100.0% |
Mcr |
Sca |
Nty |
Non |
My |
Mcr |
Rea |
0 |
onion |
230,395 |
99.1% |
Plt |
C |
Oni |
Non |
My |
Raw |
Rea |
76 |
gemini |
221,620 |
95.3% |
Ful |
Jav |
Svt |
Res |
My |
Mcr |
Rea |
0 |
spark |
221,522 |
95.3% |
Mcr |
Jav |
Svt |
Res |
My |
Ful |
Rea |
0 |
servlet |
221,106 |
95.1% |
Plt |
Jav |
Svt |
Res |
My |
Raw |
Rea |
0 |
netty |
219,194 |
94.3% |
Plt |
Jav |
Nty |
Non |
My |
Raw |
Rea |
0 |
openresty |
202,998 |
87.3% |
Plt |
Lua |
OpR |
ngx |
My |
Raw |
Rea |
0 |
go |
199,136 |
85.7% |
Plt |
Go |
Go |
Non |
My |
Raw |
Rea |
0 |
unfiltered |
165,816 |
71.3% |
Mcr |
Sca |
Nty |
Non |
My |
Mcr |
Rea |
0 |
elli |
158,209 |
68.1% |
Plt |
Erl |
eli |
Non |
My |
Raw |
Rea |
0 |
grizzly |
146,036 |
62.8% |
Mcr |
Jav |
Jty |
Res |
My |
Ful |
Rea |
0 |
http-kit |
134,965 |
58.1% |
Plt |
Clj |
htk |
Non |
My |
Raw |
Rea |
0 |
wai |
127,195 |
54.7% |
Plt |
Hkl |
Wai |
Wrp |
My |
Ful |
Rea |
0 |
vertx |
126,541 |
54.4% |
Plt |
Jav |
Nty |
Non |
Mo |
Raw |
Rea |
0 |
compojure |
113,901 |
49.0% |
Mcr |
Clj |
Svt |
Res |
My |
Mcr |
Rea |
0 |
cowboy |
113,826 |
49.0% |
Plt |
Erl |
Cow |
Non |
My |
Raw |
Rea |
0 |
tapestry |
113,144 |
48.7% |
Ful |
Jav |
Svt |
Res |
My |
Ful |
Rea |
0 |
dropwizard |
109,011 |
46.9% |
Ful |
Jav |
Jty |
Non |
My |
Ful |
Rea |
0 |
yesod |
104,564 |
45.0% |
Mcr |
Hkl |
Wai |
Wrp |
My |
Raw |
Rea |
0 |
scalatra |
92,283 |
39.7% |
Mcr |
Sca |
Svt |
Res |
My |
Ful |
Rea |
0 |
spring |
91,051 |
39.2% |
Ful |
Jav |
Svt |
Res |
My |
Ful |
Rea |
0 |
webgo |
77,897 |
33.5% |
Mcr |
Go |
Go |
Non |
My |
Ful |
Rea |
0 |
wicket |
77,285 |
33.2% |
Ful |
Jav |
Svt |
Res |
My |
Ful |
Rea |
0 |
nodejs |
72,428 |
31.2% |
Plt |
JS |
njs |
Non |
Mo |
Ful |
Rea |
0 |
play1-siena |
70,693 |
30.4% |
Ful |
Jav |
Nty |
Non |
My |
Ful |
Rea |
0 |
rack |
57,194 |
24.6% |
Plt |
Rby |
Rac |
Uni |
My |
Ful |
Rea |
0 |
bottle |
49,308 |
21.2% |
Mcr |
Py |
Wsg |
Gun |
My |
Ful |
Rea |
0 |
ringo |
45,840 |
19.7% |
Plt |
JS |
Rjs |
Non |
My |
Raw |
Rea |
0 |
express |
45,746 |
19.7% |
Mcr |
JS |
njs |
Non |
My |
Ful |
Rea |
0 |
play-scala |
41,123 |
17.7% |
Ful |
Sca |
Nty |
Non |
My |
Ful |
Rea |
0 |
lift |
39,071 |
16.8% |
Ful |
Sca |
Nty |
Non |
My |
Ful |
Rea |
0 |
php |
38,212 |
16.4% |
Plt |
PHP |
FPM |
ngx |
My |
Ful |
Rea |
0 |
ringo |
36,291 |
15.6% |
Plt |
JS |
Rjs |
Non |
My |
Mcr |
Rea |
0 |
grails |
31,958 |
13.7% |
Ful |
Grv |
Svt |
Res |
My |
Ful |
Rea |
370 |
rack |
30,121 |
13.0% |
Plt |
Rby |
JRb |
Res |
My |
Ful |
Rea |
0 |
play-java |
27,577 |
11.9% |
Ful |
Jav |
Nty |
Non |
My |
Ful |
Rea |
0 |
snap |
26,492 |
11.4% |
Mcr |
Hkl |
Snp |
Non |
My |
Ful |
Rea |
0 |
wsgi |
23,288 |
10.0% |
Plt |
Py |
Wsg |
Gun |
My |
Raw |
Rea |
0 |
django |
23,069 |
9.9% |
Ful |
Py |
Wsg |
Gun |
My |
Ful |
Str |
0 |
flask |
18,637 |
8.0% |
Mcr |
Py |
Wsg |
Uni |
My |
Ful |
Rea |
0 |
tornado |
14,575 |
6.3% |
Plt |
Py |
Tor |
Non |
Mo |
Ful |
Rea |
0 |
phalcon |
14,519 |
6.2% |
Ful |
PHP |
FPM |
ngx |
My |
Ful |
Rea |
0 |
kelp |
13,213 |
5.7% |
Ful |
Prl |
Plk |
Sta |
My |
Ful |
Rea |
0 |
micromvc |
12,810 |
5.5% |
Mcr |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
play1 |
12,418 |
5.3% |
Ful |
Jav |
Nty |
Non |
My |
Ful |
Rea |
0 |
django |
9,727 |
4.2% |
Ful |
Py |
Wsg |
Gun |
Pg |
Ful |
Rea |
0 |
dancer |
6,681 |
2.9% |
Ful |
Prl |
Plk |
Sta |
My |
Ful |
Rea |
0 |
rails |
6,051 |
2.6% |
Ful |
Rby |
Rac |
Uni |
My |
Ful |
Str |
0 |
rails |
5,274 |
2.3% |
Ful |
Rby |
JRb |
Res |
My |
Ful |
Str |
0 |
slim |
4,653 |
2.0% |
Mcr |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
rails |
4,627 |
2.0% |
Ful |
Rby |
Rac |
Uni |
My |
Ful |
Rea |
0 |
mojolicious |
4,376 |
1.9% |
Ful |
Prl |
Plk |
Sta |
My |
Ful |
Rea |
0 |
rails |
4,268 |
1.8% |
Ful |
Rby |
JRb |
Res |
My |
Ful |
Rea |
0 |
codeigniter |
4,225 |
1.8% |
Ful |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
kohana |
3,686 |
1.6% |
Ful |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
sinatra |
2,851 |
1.2% |
Mcr |
Rby |
JRb |
Res |
My |
Ful |
Rea |
0 |
phreeze |
2,736 |
1.2% |
Mcr |
PHP |
FPM |
ngx |
My |
Mcr |
Rea |
0 |
lithium |
2,570 |
1.1% |
Ful |
PHP |
FPM |
ngx |
My |
Ful |
Rea |
0 |
silex |
2,352 |
1.0% |
Mcr |
PHP |
FPM |
ngx |
My |
Ful |
Rea |
0 |
laravel |
2,166 |
0.9% |
Ful |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
fuel |
2,057 |
0.9% |
Mcr |
PHP |
FPM |
ngx |
My |
Raw |
Rea |
0 |
cake |
1,554 |
0.7% |
Ful |
PHP |
FPM |
ngx |
My |
Ful |
Rea |
0 |
sinatra |
1,219 |
0.5% |
Mcr |
Rby |
Rac |
Uni |
My |
Ful |
Rea |
0 |
symfony2 |
1,077 |
0.5% |
Ful |
PHP |
FPM |
ngx |
My |
Ful |
Rea |
0 |
Peak (bar chart) |
Data table |
Latency |