Skip to content

Commit 81c78c4

Browse files
committed
update: 20180212
1 parent f49811e commit 81c78c4

File tree

10 files changed

+235
-130
lines changed

10 files changed

+235
-130
lines changed

README.md

Lines changed: 66 additions & 60 deletions
Original file line numberDiff line numberDiff line change
@@ -6,52 +6,55 @@ Each framework has to have two features; routing and parsing path parameters.
66
## Result
77

88
<!-- Result from here -->
9-
Last update: 2018-01-18
9+
Last update: 2018-02-12
1010
```
1111
OS: Darwin (version: 17.3.0, arch: x86_64)
1212
CPU Cores: 8
1313
```
1414

1515
### Ranking (Framework)
1616

17-
1. [iron](https://github.com/iron/iron) (rust)
18-
2. [router_cr](https://github.com/tbrand/router.cr) (crystal)
17+
1. [router_cr](https://github.com/tbrand/router.cr) (crystal)
18+
2. [actix](https://github.com/actix/actix-web) (rust)
1919
3. [nickel](https://github.com/nickel-org/nickel.rs) (rust)
20-
4. [raze](https://github.com/samueleaton/raze) (crystal)
21-
5. [japronto](https://github.com/squeaky-pl/japronto) (python)
22-
6. [fasthttprouter](https://github.com/buaazp/fasthttprouter) (go)
23-
7. [kemal](https://github.com/kemalcr/kemal) (crystal)
24-
8. [rocket](https://github.com/SergioBenitez/Rocket) (rust)
25-
9. [iris](https://github.com/kataras/iris) (go)
26-
10. [echo](https://github.com/labstack/echo) (go)
27-
11. [aspnetcore](https://github.com/aspnet/Home) (csharp)
28-
12. [gorilla_mux](https://github.com/gorilla/mux) (go)
29-
13. [plug](https://github.com/elixir-lang/plug) (elixir)
30-
14. [gin](https://github.com/gin-gonic/gin) (go)
31-
15. [phoenix](https://github.com/phoenixframework/phoenix) (elixir)
32-
16. [vapor](https://github.com/vapor/vapor) (swift)
33-
17. [perfect](https://github.com/PerfectlySoft/Perfect) (swift)
34-
18. [sanic](https://github.com/channelcat/sanic) (python)
35-
19. [kitura](https://github.com/IBM-Swift/Kitura) (swift)
36-
20. [clusterexpress](https://github.com/LearnBoost/cluster) (node)
37-
21. [akkahttp](https://github.com/akka/akka-http) (scala)
38-
22. [express](https://github.com/expressjs/express) (node)
39-
23. [roda](https://github.com/jeremyevans/roda) (ruby)
40-
24. [jester](https://github.com/dom96/jester) (nim)
41-
25. [criollo](https://github.com/thecatalinstan/criollo) (objc)
42-
26. [sinatra](https://github.com/sinatra/sinatra) (ruby)
43-
27. [rails](https://github.com/rails/rails) (ruby)
20+
4. [iron](https://github.com/iron/iron) (rust)
21+
5. [raze](https://github.com/samueleaton/raze) (crystal)
22+
6. [japronto](https://github.com/squeaky-pl/japronto) (python)
23+
7. [fasthttprouter](https://github.com/buaazp/fasthttprouter) (go)
24+
8. [kemal](https://github.com/kemalcr/kemal) (crystal)
25+
9. [rocket](https://github.com/SergioBenitez/Rocket) (rust)
26+
10. [clusterpolka](https://github.com/lukeed/polka) (node)
27+
11. [echo](https://github.com/labstack/echo) (go)
28+
12. [iris](https://github.com/kataras/iris) (go)
29+
13. [gorilla_mux](https://github.com/gorilla/mux) (go)
30+
14. [aspnetcore](https://github.com/aspnet/Home) (csharp)
31+
15. [plug](https://github.com/elixir-lang/plug) (elixir)
32+
16. [gin](https://github.com/gin-gonic/gin) (go)
33+
17. [phoenix](https://github.com/phoenixframework/phoenix) (elixir)
34+
18. [vapor](https://github.com/vapor/vapor) (swift)
35+
19. [perfect](https://github.com/PerfectlySoft/Perfect) (swift)
36+
20. [sanic](https://github.com/channelcat/sanic) (python)
37+
21. [polka](https://github.com/lukeed/polka) (node)
38+
22. [kitura](https://github.com/IBM-Swift/Kitura) (swift)
39+
23. [clusterexpress](https://github.com/LearnBoost/cluster) (node)
40+
24. [akkahttp](https://github.com/akka/akka-http) (scala)
41+
25. [express](https://github.com/expressjs/express) (node)
42+
26. [roda](https://github.com/jeremyevans/roda) (ruby)
43+
27. [jester](https://github.com/dom96/jester) (nim)
44+
28. [criollo](https://github.com/thecatalinstan/criollo) (objc)
45+
29. [sinatra](https://github.com/sinatra/sinatra) (ruby)
46+
30. [rails](https://github.com/rails/rails) (ruby)
4447

4548
### Ranking (Language)
4649

47-
1. rust ([iron](https://github.com/iron/iron))
48-
2. crystal ([router_cr](https://github.com/tbrand/router.cr))
50+
1. crystal ([router_cr](https://github.com/tbrand/router.cr))
51+
2. rust ([actix](https://github.com/actix/actix-web))
4952
3. python ([japronto](https://github.com/squeaky-pl/japronto))
5053
4. go ([fasthttprouter](https://github.com/buaazp/fasthttprouter))
51-
5. csharp ([aspnetcore](https://github.com/aspnet/Home))
52-
6. elixir ([plug](https://github.com/elixir-lang/plug))
53-
7. swift ([vapor](https://github.com/vapor/vapor))
54-
8. node ([clusterexpress](https://github.com/LearnBoost/cluster))
54+
5. node ([clusterpolka](https://github.com/lukeed/polka))
55+
6. csharp ([aspnetcore](https://github.com/aspnet/Home))
56+
7. elixir ([plug](https://github.com/elixir-lang/plug))
57+
8. swift ([vapor](https://github.com/vapor/vapor))
5558
9. scala ([akkahttp](https://github.com/akka/akka-http))
5659
10. ruby ([roda](https://github.com/jeremyevans/roda))
5760
11. nim ([jester](https://github.com/dom96/jester))
@@ -61,33 +64,36 @@ CPU Cores: 8
6164

6265
| Language (Runtime) | Framework (Middleware) | Max [sec] | Min [sec] | Ave [sec] |
6366
|---------------------------|---------------------------|-----------------|-----------------|-----------------|
64-
| ruby | rails | 169.990758 | 169.245815 | 169.500696 |
65-
| ruby | sinatra | 48.785529 | 48.654910 | 48.711666 |
66-
| ruby | roda | 18.727357 | 18.608974 | 18.661612 |
67-
| crystal | kemal | 4.178043 | 4.054511 | 4.129273 |
68-
| crystal | router_cr | 3.455170 | 3.376436 | 3.427589 |
69-
| crystal | raze | 3.562387 | 3.444175 | 3.536099 |
70-
| go | echo | 5.256643 | 4.904162 | 5.048713 |
71-
| go | gorilla_mux | 5.390430 | 4.980591 | 5.142020 |
72-
| go | iris | 5.244560 | 4.795147 | 4.989660 |
73-
| go | fasthttprouter | 3.715726 | 3.595522 | 3.662270 |
74-
| go | gin | 5.682742 | 5.357033 | 5.502924 |
75-
| rust | iron | 3.485740 | 3.357875 | 3.412701 |
76-
| rust | nickel | 3.485643 | 3.416737 | 3.464607 |
77-
| rust | rocket | 4.260527 | 4.139049 | 4.211128 |
78-
| node | express | 13.895781 | 13.413687 | 13.619828 |
79-
| node | clusterexpress | 9.048196 | 7.710249 | 8.209995 |
80-
| elixir | plug | 5.599585 | 5.259777 | 5.456209 |
81-
| elixir | phoenix | 5.693897 | 5.393461 | 5.618488 |
82-
| swift | vapor | 6.296311 | 5.985685 | 6.120673 |
83-
| swift | perfect | 6.570743 | 6.186247 | 6.362126 |
84-
| swift | kitura | 7.643707 | 7.318455 | 7.467837 |
85-
| scala | akkahttp | 9.675075 | 7.849877 | 8.536331 |
86-
| csharp | aspnetcore | 5.405356 | 4.861280 | 5.128910 |
87-
| python | sanic | 7.291824 | 6.076758 | 6.445577 |
88-
| python | japronto | 3.587456 | 3.509572 | 3.544309 |
89-
| nim | jester | 27.304759 | 27.177061 | 27.240023 |
90-
| objc | criollo | 28.879014 | 27.740031 | 28.389459 |
67+
| ruby | rails | 170.367628 | 169.936902 | 170.126046 |
68+
| ruby | sinatra | 48.778433 | 48.624297 | 48.669990 |
69+
| ruby | roda | 18.932657 | 18.894802 | 18.912907 |
70+
| crystal | kemal | 4.106407 | 3.966922 | 4.064647 |
71+
| crystal | router_cr | 3.405136 | 3.237196 | 3.341510 |
72+
| crystal | raze | 3.560398 | 3.404760 | 3.518680 |
73+
| go | echo | 5.191288 | 4.834103 | 4.988960 |
74+
| go | gorilla_mux | 5.275145 | 5.093143 | 5.208652 |
75+
| go | iris | 5.282357 | 4.888284 | 5.075264 |
76+
| go | fasthttprouter | 3.736463 | 3.618410 | 3.686607 |
77+
| go | gin | 5.641557 | 5.135107 | 5.393527 |
78+
| rust | actix | 3.387631 | 3.303975 | 3.342585 |
79+
| rust | iron | 3.554686 | 3.451469 | 3.501088 |
80+
| rust | nickel | 3.570879 | 3.397856 | 3.477659 |
81+
| rust | rocket | 4.254425 | 4.146578 | 4.195467 |
82+
| node | express | 14.019920 | 12.905849 | 13.208341 |
83+
| node | clusterexpress | 8.666874 | 7.384296 | 7.777996 |
84+
| node | polka | 7.687397 | 7.284888 | 7.389873 |
85+
| node | clusterpolka | 4.595137 | 4.201701 | 4.309777 |
86+
| elixir | plug | 5.528723 | 5.223662 | 5.355764 |
87+
| elixir | phoenix | 5.858134 | 5.154151 | 5.482702 |
88+
| swift | vapor | 6.498268 | 5.940431 | 6.122171 |
89+
| swift | perfect | 6.644757 | 6.035297 | 6.239225 |
90+
| swift | kitura | 8.151191 | 7.400613 | 7.721501 |
91+
| scala | akkahttp | 9.505543 | 8.379722 | 8.877244 |
92+
| csharp | aspnetcore | 5.478113 | 4.890794 | 5.235464 |
93+
| python | sanic | 7.562353 | 6.305690 | 6.971293 |
94+
| python | japronto | 3.569385 | 3.470750 | 3.523741 |
95+
| nim | jester | 27.408656 | 27.176336 | 27.255200 |
96+
| objc | criollo | 32.316814 | 27.295537 | 29.580028 |
9197
<!-- Result till here -->
9298

9399
## Current target frameworks (middlewares)

crystal/raze/shard.lock

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,5 +10,5 @@ shards:
1010

1111
raze:
1212
github: samueleaton/raze
13-
version: 0.1.0
13+
version: 0.2.1
1414

neph.yaml

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,7 @@ crystal:
8484
- kemal
8585
- router_cr
8686
- raze
87+
# - lucky
8788

8889
kemal:
8990
command: |
@@ -109,6 +110,18 @@ router_cr:
109110
dir:
110111
crystal/router.cr
111112

113+
# Temporary remove lucky because of the following error at compiling
114+
# ```
115+
# 1. Manifest at which_is_the_fastest/crystal/lucky/public/manifest.json does not exist
116+
# ```
117+
# lucky:
118+
# command: |
119+
# shards update
120+
# shards build --release
121+
# ln -s -f ../crystal/lucky/bin/server_crystal_lucky ../../bin/.
122+
# dir:
123+
# crystal/lucky
124+
112125
go:
113126
depends_on:
114127
- echo

node/polka/package-lock.json

Lines changed: 47 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

rust/actix/.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
/target/

0 commit comments

Comments
 (0)