diff --git a/README.md b/README.md index df822ea9..f3365291 100644 --- a/README.md +++ b/README.md @@ -46,35 +46,35 @@ node ./benchmark [arguments (optional)] * __Machine:__ linux x64 | 4 vCPUs | 15.6GB Mem * __Node:__ `v20.18.1` -* __Run:__ Mon Dec 16 2024 01:34:07 GMT+0000 (Coordinated Universal Time) +* __Run:__ Mon Dec 23 2024 01:29:10 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.18.1 | ✗ | 48003.2 | 20.35 | 8.56 | -| kita | 1.1.36 | ✓ | 46867.2 | 20.83 | 8.40 | -| fastify | 4.29.0 | ✓ | 46848.0 | 20.85 | 8.40 | -| connect | 3.7.0 | ✗ | 46386.4 | 21.06 | 8.27 | -| rayo | 1.4.6 | ✓ | 46267.2 | 21.10 | 8.25 | -| server-base | 7.1.32 | ✗ | 46200.0 | 21.13 | 8.24 | -| polka | 0.5.2 | ✓ | 46073.6 | 21.21 | 8.22 | -| polkadot | 1.0.0 | ✗ | 45488.8 | 21.49 | 8.11 | -| 0http | 3.5.3 | ✓ | 45183.2 | 21.63 | 8.06 | -| server-base-router | 7.1.32 | ✓ | 44820.0 | 21.83 | 7.99 | -| connect-router | 1.3.8 | ✓ | 43435.2 | 22.51 | 7.75 | -| h3 | 1.13.0 | ✗ | 43093.6 | 22.71 | 7.69 | -| h3-router | 1.13.0 | ✓ | 41871.2 | 23.39 | 7.47 | -| hono | 4.6.14 | ✓ | 40430.4 | 24.23 | 6.63 | -| restana | 4.9.9 | ✓ | 38896.0 | 25.21 | 6.94 | -| koa | 2.15.3 | ✗ | 37427.0 | 26.22 | 6.67 | -| restify | 11.1.0 | ✓ | 35023.0 | 28.05 | 6.31 | -| take-five | 2.0.0 | ✓ | 34940.6 | 28.11 | 12.56 | -| koa-isomorphic-router | 1.0.1 | ✓ | 34740.6 | 28.27 | 6.20 | -| koa-router | 12.0.1 | ✓ | 34173.0 | 28.76 | 6.09 | -| hapi | 21.3.12 | ✓ | 32153.6 | 30.59 | 5.73 | -| fastify-big-json | 4.29.0 | ✓ | 11912.2 | 83.37 | 137.05 | -| express | 4.21.2 | ✓ | 10926.0 | 90.94 | 1.95 | -| express-with-middlewares | 4.21.2 | ✓ | 10365.1 | 95.88 | 3.86 | +| bare | v20.18.1 | ✗ | 48011.2 | 20.34 | 8.56 | +| polka | 0.5.2 | ✓ | 47158.4 | 20.71 | 8.41 | +| kita | 1.1.36 | ✓ | 47092.0 | 20.73 | 8.44 | +| fastify | 4.29.0 | ✓ | 47020.0 | 20.75 | 8.43 | +| rayo | 1.4.6 | ✓ | 46799.2 | 20.86 | 8.35 | +| connect | 3.7.0 | ✗ | 46765.6 | 20.87 | 8.34 | +| 0http | 3.5.3 | ✓ | 46439.2 | 21.04 | 8.28 | +| server-base | 7.1.32 | ✗ | 46248.0 | 21.11 | 8.25 | +| server-base-router | 7.1.32 | ✓ | 45804.8 | 21.31 | 8.17 | +| polkadot | 1.0.0 | ✗ | 45307.2 | 21.57 | 8.08 | +| connect-router | 1.3.8 | ✓ | 43272.0 | 22.61 | 7.72 | +| h3 | 1.13.0 | ✗ | 42395.2 | 23.09 | 7.56 | +| hono | 4.6.14 | ✓ | 40999.2 | 23.88 | 6.73 | +| h3-router | 1.13.0 | ✓ | 40523.6 | 24.18 | 7.23 | +| restana | 4.9.9 | ✓ | 39951.2 | 24.54 | 7.13 | +| koa | 2.15.3 | ✗ | 37756.2 | 25.98 | 6.73 | +| koa-isomorphic-router | 1.0.1 | ✓ | 36119.4 | 27.18 | 6.44 | +| take-five | 2.0.0 | ✓ | 35725.0 | 27.48 | 12.84 | +| restify | 11.1.0 | ✓ | 35673.4 | 27.54 | 6.43 | +| koa-router | 12.0.1 | ✓ | 35173.0 | 27.93 | 6.27 | +| hapi | 21.3.12 | ✓ | 32264.4 | 30.49 | 5.75 | +| fastify-big-json | 4.29.0 | ✓ | 11891.0 | 83.54 | 136.81 | +| express | 4.21.2 | ✓ | 11420.8 | 86.99 | 2.04 | +| express-with-middlewares | 4.21.2 | ✓ | 10571.8 | 94.00 | 3.93 | | 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 1552f426..a39ce09e 100644 --- a/benchmark-results.json +++ b/benchmark-results.json @@ -1 +1 @@ -[{"name":"bare","version":"v20.18.1","requests":"48003.2","latency":"20.35","throughput":"8.56"},{"name":"kita","version":"1.1.36","hasRouter":true,"requests":"46867.2","latency":"20.83","throughput":"8.40"},{"name":"fastify","version":"4.29.0","hasRouter":true,"requests":"46848.0","latency":"20.85","throughput":"8.40"},{"name":"connect","version":"3.7.0","requests":"46386.4","latency":"21.06","throughput":"8.27"},{"name":"rayo","version":"1.4.6","hasRouter":true,"requests":"46267.2","latency":"21.10","throughput":"8.25"},{"name":"server-base","version":"7.1.32","requests":"46200.0","latency":"21.13","throughput":"8.24"},{"name":"polka","version":"0.5.2","hasRouter":true,"requests":"46073.6","latency":"21.21","throughput":"8.22"},{"name":"polkadot","version":"1.0.0","hasRouter":false,"requests":"45488.8","latency":"21.49","throughput":"8.11"},{"name":"0http","version":"3.5.3","hasRouter":true,"requests":"45183.2","latency":"21.63","throughput":"8.06"},{"name":"server-base-router","version":"7.1.32","hasRouter":true,"requests":"44820.0","latency":"21.83","throughput":"7.99"},{"name":"connect-router","version":"1.3.8","hasRouter":true,"requests":"43435.2","latency":"22.51","throughput":"7.75"},{"name":"h3","version":"1.13.0","requests":"43093.6","latency":"22.71","throughput":"7.69"},{"name":"h3-router","version":"1.13.0","hasRouter":true,"requests":"41871.2","latency":"23.39","throughput":"7.47"},{"name":"hono","version":"4.6.14","hasRouter":true,"requests":"40430.4","latency":"24.23","throughput":"6.63"},{"name":"restana","version":"4.9.9","hasRouter":true,"requests":"38896.0","latency":"25.21","throughput":"6.94"},{"name":"koa","version":"2.15.3","requests":"37427.0","latency":"26.22","throughput":"6.67"},{"name":"restify","version":"11.1.0","hasRouter":true,"requests":"35023.0","latency":"28.05","throughput":"6.31"},{"name":"take-five","version":"2.0.0","hasRouter":true,"requests":"34940.6","latency":"28.11","throughput":"12.56"},{"name":"koa-isomorphic-router","version":"1.0.1","hasRouter":true,"requests":"34740.6","latency":"28.27","throughput":"6.20"},{"name":"koa-router","version":"12.0.1","hasRouter":true,"requests":"34173.0","latency":"28.76","throughput":"6.09"},{"name":"hapi","version":"21.3.12","hasRouter":true,"requests":"32153.6","latency":"30.59","throughput":"5.73"},{"name":"fastify-big-json","version":"4.29.0","hasRouter":true,"requests":"11912.2","latency":"83.37","throughput":"137.05"},{"name":"express","version":"4.21.2","hasRouter":true,"requests":"10926.0","latency":"90.94","throughput":"1.95"},{"name":"express-with-middlewares","version":"4.21.2","hasRouter":true,"requests":"10365.1","latency":"95.88","throughput":"3.86"},{"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.18.1","requests":"48011.2","latency":"20.34","throughput":"8.56"},{"name":"polka","version":"0.5.2","hasRouter":true,"requests":"47158.4","latency":"20.71","throughput":"8.41"},{"name":"kita","version":"1.1.36","hasRouter":true,"requests":"47092.0","latency":"20.73","throughput":"8.44"},{"name":"fastify","version":"4.29.0","hasRouter":true,"requests":"47020.0","latency":"20.75","throughput":"8.43"},{"name":"rayo","version":"1.4.6","hasRouter":true,"requests":"46799.2","latency":"20.86","throughput":"8.35"},{"name":"connect","version":"3.7.0","requests":"46765.6","latency":"20.87","throughput":"8.34"},{"name":"0http","version":"3.5.3","hasRouter":true,"requests":"46439.2","latency":"21.04","throughput":"8.28"},{"name":"server-base","version":"7.1.32","requests":"46248.0","latency":"21.11","throughput":"8.25"},{"name":"server-base-router","version":"7.1.32","hasRouter":true,"requests":"45804.8","latency":"21.31","throughput":"8.17"},{"name":"polkadot","version":"1.0.0","hasRouter":false,"requests":"45307.2","latency":"21.57","throughput":"8.08"},{"name":"connect-router","version":"1.3.8","hasRouter":true,"requests":"43272.0","latency":"22.61","throughput":"7.72"},{"name":"h3","version":"1.13.0","requests":"42395.2","latency":"23.09","throughput":"7.56"},{"name":"hono","version":"4.6.14","hasRouter":true,"requests":"40999.2","latency":"23.88","throughput":"6.73"},{"name":"h3-router","version":"1.13.0","hasRouter":true,"requests":"40523.6","latency":"24.18","throughput":"7.23"},{"name":"restana","version":"4.9.9","hasRouter":true,"requests":"39951.2","latency":"24.54","throughput":"7.13"},{"name":"koa","version":"2.15.3","requests":"37756.2","latency":"25.98","throughput":"6.73"},{"name":"koa-isomorphic-router","version":"1.0.1","hasRouter":true,"requests":"36119.4","latency":"27.18","throughput":"6.44"},{"name":"take-five","version":"2.0.0","hasRouter":true,"requests":"35725.0","latency":"27.48","throughput":"12.84"},{"name":"restify","version":"11.1.0","hasRouter":true,"requests":"35673.4","latency":"27.54","throughput":"6.43"},{"name":"koa-router","version":"12.0.1","hasRouter":true,"requests":"35173.0","latency":"27.93","throughput":"6.27"},{"name":"hapi","version":"21.3.12","hasRouter":true,"requests":"32264.4","latency":"30.49","throughput":"5.75"},{"name":"fastify-big-json","version":"4.29.0","hasRouter":true,"requests":"11891.0","latency":"83.54","throughput":"136.81"},{"name":"express","version":"4.21.2","hasRouter":true,"requests":"11420.8","latency":"86.99","throughput":"2.04"},{"name":"express-with-middlewares","version":"4.21.2","hasRouter":true,"requests":"10571.8","latency":"94.00","throughput":"3.93"},{"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