diff --git a/README.md b/README.md index b7842f85..632f6495 100644 --- a/README.md +++ b/README.md @@ -46,34 +46,34 @@ node ./benchmark [arguments (optional)] * __Machine:__ linux x64 | 4 vCPUs | 15.6GB Mem * __Node:__ `v20.12.2` -* __Run:__ Mon Apr 22 2024 01:33:44 GMT+0000 (Coordinated Universal Time) +* __Run:__ Mon Apr 29 2024 01:33:22 GMT+0000 (Coordinated Universal Time) * __Method:__ `autocannon -c 100 -d 40 -p 10 localhost:3000` (two rounds; one to warm-up, one to measure) | | Version | Router | Requests/s | Latency (ms) | Throughput/Mb | | :-- | --: | --: | :-: | --: | --: | -| bare | v20.12.2 | ✗ | 46896.8 | 20.82 | 8.36 | -| fastify | 4.26.2 | ✓ | 45871.2 | 21.30 | 8.22 | -| connect | 3.7.0 | ✗ | 45844.0 | 21.31 | 8.18 | -| polkadot | 1.0.0 | ✗ | 45483.2 | 21.49 | 8.11 | -| rayo | 1.4.6 | ✓ | 44964.0 | 21.75 | 8.02 | -| polka | 0.5.2 | ✓ | 44564.0 | 21.94 | 7.95 | -| server-base | 7.1.32 | ✗ | 44480.8 | 21.99 | 7.93 | -| 0http | 3.5.3 | ✓ | 44324.8 | 22.06 | 7.90 | -| server-base-router | 7.1.32 | ✓ | 43236.0 | 22.62 | 7.71 | -| connect-router | 1.3.8 | ✓ | 43136.8 | 22.68 | 7.69 | -| h3 | 1.11.1 | ✗ | 40539.2 | 24.18 | 7.23 | -| h3-router | 1.11.1 | ✓ | 40508.8 | 24.18 | 7.22 | -| hono | 4.2.6 | ✓ | 39608.0 | 24.74 | 7.06 | -| restana | 4.9.9 | ✓ | 38464.0 | 25.49 | 6.86 | -| koa | 2.15.3 | ✗ | 36555.8 | 26.85 | 6.52 | -| koa-isomorphic-router | 1.0.1 | ✓ | 34586.6 | 28.39 | 6.17 | -| take-five | 2.0.0 | ✓ | 33743.6 | 29.13 | 12.13 | -| restify | 11.1.0 | ✓ | 33533.4 | 29.32 | 6.04 | -| koa-router | 12.0.1 | ✓ | 32970.4 | 29.83 | 5.88 | -| hapi | 21.3.9 | ✓ | 30278.0 | 32.51 | 5.40 | -| fastify-big-json | 4.26.2 | ✓ | 11839.4 | 83.91 | 136.22 | -| express | 4.19.2 | ✓ | 11080.2 | 89.67 | 1.98 | -| express-with-middlewares | 4.19.2 | ✓ | 9944.2 | 99.94 | 3.70 | +| bare | v20.12.2 | ✗ | 45137.6 | 21.66 | 8.05 | +| connect | 3.7.0 | ✗ | 44982.4 | 21.74 | 8.02 | +| fastify | 4.26.2 | ✓ | 44862.4 | 21.80 | 8.04 | +| polkadot | 1.0.0 | ✗ | 44858.4 | 21.80 | 8.00 | +| rayo | 1.4.6 | ✓ | 44592.0 | 21.93 | 7.95 | +| polka | 0.5.2 | ✓ | 44556.0 | 21.99 | 7.95 | +| 0http | 3.5.3 | ✓ | 44210.4 | 22.12 | 7.88 | +| server-base-router | 7.1.32 | ✓ | 43513.6 | 22.48 | 7.76 | +| server-base | 7.1.32 | ✗ | 43228.8 | 22.63 | 7.71 | +| connect-router | 1.3.8 | ✓ | 42483.2 | 23.04 | 7.58 | +| h3 | 1.11.1 | ✗ | 41828.8 | 23.42 | 7.46 | +| h3-router | 1.11.1 | ✓ | 39782.4 | 24.64 | 7.09 | +| hono | 4.2.8 | ✓ | 39368.8 | 24.90 | 7.02 | +| restana | 4.9.9 | ✓ | 37133.8 | 26.44 | 6.62 | +| koa | 2.15.3 | ✗ | 35760.8 | 27.46 | 6.38 | +| koa-isomorphic-router | 1.0.1 | ✓ | 34299.6 | 28.66 | 6.12 | +| take-five | 2.0.0 | ✓ | 34061.0 | 28.85 | 12.25 | +| restify | 11.1.0 | ✓ | 33341.6 | 29.48 | 6.01 | +| koa-router | 12.0.1 | ✓ | 33054.0 | 29.74 | 5.89 | +| hapi | 21.3.9 | ✓ | 29606.4 | 33.27 | 5.28 | +| fastify-big-json | 4.26.2 | ✓ | 11793.6 | 84.22 | 135.70 | +| express | 4.19.2 | ✓ | 10615.6 | 93.58 | 1.89 | +| express-with-middlewares | 4.19.2 | ✓ | 10145.0 | 97.98 | 3.77 | | micro-route | 2.5.0 | ✓ | N/A | N/A | N/A | | micro | 10.0.1 | ✗ | N/A | N/A | N/A | | microrouter | 3.1.3 | ✓ | N/A | N/A | N/A | diff --git a/benchmark-results.json b/benchmark-results.json index b779eae9..e3ae713d 100644 --- a/benchmark-results.json +++ b/benchmark-results.json @@ -1 +1 @@ -[{"name":"bare","version":"v20.12.2","requests":"46896.8","latency":"20.82","throughput":"8.36"},{"name":"fastify","version":"4.26.2","hasRouter":true,"requests":"45871.2","latency":"21.30","throughput":"8.22"},{"name":"connect","version":"3.7.0","requests":"45844.0","latency":"21.31","throughput":"8.18"},{"name":"polkadot","version":"1.0.0","hasRouter":false,"requests":"45483.2","latency":"21.49","throughput":"8.11"},{"name":"rayo","version":"1.4.6","hasRouter":true,"requests":"44964.0","latency":"21.75","throughput":"8.02"},{"name":"polka","version":"0.5.2","hasRouter":true,"requests":"44564.0","latency":"21.94","throughput":"7.95"},{"name":"server-base","version":"7.1.32","requests":"44480.8","latency":"21.99","throughput":"7.93"},{"name":"0http","version":"3.5.3","hasRouter":true,"requests":"44324.8","latency":"22.06","throughput":"7.90"},{"name":"server-base-router","version":"7.1.32","hasRouter":true,"requests":"43236.0","latency":"22.62","throughput":"7.71"},{"name":"connect-router","version":"1.3.8","hasRouter":true,"requests":"43136.8","latency":"22.68","throughput":"7.69"},{"name":"h3","version":"1.11.1","requests":"40539.2","latency":"24.18","throughput":"7.23"},{"name":"h3-router","version":"1.11.1","hasRouter":true,"requests":"40508.8","latency":"24.18","throughput":"7.22"},{"name":"hono","version":"4.2.6","hasRouter":true,"requests":"39608.0","latency":"24.74","throughput":"7.06"},{"name":"restana","version":"4.9.9","hasRouter":true,"requests":"38464.0","latency":"25.49","throughput":"6.86"},{"name":"koa","version":"2.15.3","requests":"36555.8","latency":"26.85","throughput":"6.52"},{"name":"koa-isomorphic-router","version":"1.0.1","hasRouter":true,"requests":"34586.6","latency":"28.39","throughput":"6.17"},{"name":"take-five","version":"2.0.0","hasRouter":true,"requests":"33743.6","latency":"29.13","throughput":"12.13"},{"name":"restify","version":"11.1.0","hasRouter":true,"requests":"33533.4","latency":"29.32","throughput":"6.04"},{"name":"koa-router","version":"12.0.1","hasRouter":true,"requests":"32970.4","latency":"29.83","throughput":"5.88"},{"name":"hapi","version":"21.3.9","hasRouter":true,"requests":"30278.0","latency":"32.51","throughput":"5.40"},{"name":"fastify-big-json","version":"4.26.2","hasRouter":true,"requests":"11839.4","latency":"83.91","throughput":"136.22"},{"name":"express","version":"4.19.2","hasRouter":true,"requests":"11080.2","latency":"89.67","throughput":"1.98"},{"name":"express-with-middlewares","version":"4.19.2","hasRouter":true,"requests":"9944.2","latency":"99.94","throughput":"3.70"},{"name":"micro-route","version":"2.5.0","hasRouter":true,"requests":"N/A","latency":"N/A","throughput":"N/A"},{"name":"micro","version":"10.0.1","requests":"N/A","latency":"N/A","throughput":"N/A"},{"name":"microrouter","version":"3.1.3","hasRouter":true,"requests":"N/A","latency":"N/A","throughput":"N/A"},{"name":"trpc-router","version":"10.45.2","hasRouter":true,"requests":"N/A","latency":"N/A","throughput":"N/A"}] \ No newline at end of file +[{"name":"bare","version":"v20.12.2","requests":"45137.6","latency":"21.66","throughput":"8.05"},{"name":"connect","version":"3.7.0","requests":"44982.4","latency":"21.74","throughput":"8.02"},{"name":"fastify","version":"4.26.2","hasRouter":true,"requests":"44862.4","latency":"21.80","throughput":"8.04"},{"name":"polkadot","version":"1.0.0","hasRouter":false,"requests":"44858.4","latency":"21.80","throughput":"8.00"},{"name":"rayo","version":"1.4.6","hasRouter":true,"requests":"44592.0","latency":"21.93","throughput":"7.95"},{"name":"polka","version":"0.5.2","hasRouter":true,"requests":"44556.0","latency":"21.99","throughput":"7.95"},{"name":"0http","version":"3.5.3","hasRouter":true,"requests":"44210.4","latency":"22.12","throughput":"7.88"},{"name":"server-base-router","version":"7.1.32","hasRouter":true,"requests":"43513.6","latency":"22.48","throughput":"7.76"},{"name":"server-base","version":"7.1.32","requests":"43228.8","latency":"22.63","throughput":"7.71"},{"name":"connect-router","version":"1.3.8","hasRouter":true,"requests":"42483.2","latency":"23.04","throughput":"7.58"},{"name":"h3","version":"1.11.1","requests":"41828.8","latency":"23.42","throughput":"7.46"},{"name":"h3-router","version":"1.11.1","hasRouter":true,"requests":"39782.4","latency":"24.64","throughput":"7.09"},{"name":"hono","version":"4.2.8","hasRouter":true,"requests":"39368.8","latency":"24.90","throughput":"7.02"},{"name":"restana","version":"4.9.9","hasRouter":true,"requests":"37133.8","latency":"26.44","throughput":"6.62"},{"name":"koa","version":"2.15.3","requests":"35760.8","latency":"27.46","throughput":"6.38"},{"name":"koa-isomorphic-router","version":"1.0.1","hasRouter":true,"requests":"34299.6","latency":"28.66","throughput":"6.12"},{"name":"take-five","version":"2.0.0","hasRouter":true,"requests":"34061.0","latency":"28.85","throughput":"12.25"},{"name":"restify","version":"11.1.0","hasRouter":true,"requests":"33341.6","latency":"29.48","throughput":"6.01"},{"name":"koa-router","version":"12.0.1","hasRouter":true,"requests":"33054.0","latency":"29.74","throughput":"5.89"},{"name":"hapi","version":"21.3.9","hasRouter":true,"requests":"29606.4","latency":"33.27","throughput":"5.28"},{"name":"fastify-big-json","version":"4.26.2","hasRouter":true,"requests":"11793.6","latency":"84.22","throughput":"135.70"},{"name":"express","version":"4.19.2","hasRouter":true,"requests":"10615.6","latency":"93.58","throughput":"1.89"},{"name":"express-with-middlewares","version":"4.19.2","hasRouter":true,"requests":"10145.0","latency":"97.98","throughput":"3.77"},{"name":"micro-route","version":"2.5.0","hasRouter":true,"requests":"N/A","latency":"N/A","throughput":"N/A"},{"name":"micro","version":"10.0.1","requests":"N/A","latency":"N/A","throughput":"N/A"},{"name":"microrouter","version":"3.1.3","hasRouter":true,"requests":"N/A","latency":"N/A","throughput":"N/A"},{"name":"trpc-router","version":"10.45.2","hasRouter":true,"requests":"N/A","latency":"N/A","throughput":"N/A"}] \ No newline at end of file