JS web framework comparison: any two, head to head
uWebSockets.js is quicker than fastify on 12 of the 12 profiles they both run. On the HTTP/1.1 composite they score 438 and 290.
Pick any two of the 9 JS entries. Requests per second is the best of three runs and the delta is the first column against the second; every row is the same profile at the same connection count, on the same machine. What each profile measures.
| Profile | Conns | uWebSockets.js req/sec | fastify req/sec | Delta | uWebSockets.js p99 | fastify p99 |
|---|---|---|---|---|---|---|
| Baseline | 512 | 2,445,939 | 711,263 | +244% | 517us | 1.37ms |
| Baseline | 4,096 | 2,458,232 | 737,611 | +233% | 3.05ms | 6.32ms |
| Pipelined | 512 | 16,898,716 | 1,671,338 | +911% | 1.32ms | 6.57ms |
| Pipelined | 4,096 | 17,098,041 | 1,671,518 | +923% | 5.14ms | 49.80ms |
| Short-lived | 512 | 1,841,848 | 298,779 | +516% | 1.03ms | 17.60ms |
| Short-lived | 4,096 | 2,138,373 | 291,264 | +634% | 7.13ms | 18.80ms |
| JSON | 4,096 | 1,109,239 | 522,201 | +112% | 10.30ms | 25.30ms |
| JSON Comp | 512 | 329,697 | 61,346 | +437% | 6.94ms | 44.40ms |
| JSON Comp | 4,096 | 346,592 | 49,030 | +607% | 33.50ms | 200.40ms |
| JSON Comp | 16,384 | 347,118 | 49,716 | +598% | 107.60ms | 1.14s |
| Upload | 32 | 3,070 | 1,853 | +66% | 46.60ms | 60.90ms |
| Upload | 256 | 3,123 | 1,902 | +64% | 291.70ms | 647.40ms |
Common comparisons
uWebSockets.js vs fastify · uWebSockets.js vs express · uWebSockets.js vs node-h3 · fastify vs express · fastify vs node-h3 · express vs node-h3
Questions
Is uWebSockets.js faster than fastify?
uWebSockets.js is quicker than fastify on 12 of the 12 profiles they both run. On the HTTP/1.1 composite they score 438 and 290. Both run on the same machine, in the same round, against the same profiles.
Is uWebSockets.js faster than express?
uWebSockets.js is quicker than express on 12 of the 12 profiles they both run. On the HTTP/1.1 composite they score 438 and 272. Both run on the same machine, in the same round, against the same profiles.
Is uWebSockets.js faster than node-h3?
uWebSockets.js is quicker than node-h3 on 12 of the 12 profiles they both run. On the HTTP/1.1 composite they score 438 and 207. Both run on the same machine, in the same round, against the same profiles.
Is fastify faster than express?
fastify is quicker than express on 11 of the 18 profiles they both run, and behind on 7. On the HTTP/1.1 composite they score 290 and 272. Both run on the same machine, in the same round, against the same profiles.
Which JS framework is fastest overall?
fulmine holds the highest HTTP/1.1 composite of the JS entries, at 769. The composite is throughput over the whole suite; if a service is one shape of workload, compare that profile on its own in the table above, because the order changes.
Every JS entry
Results updated · JS composite ranking · Other languages · Open the leaderboard