Skip to content

Simple HTTP benchmark for different nodejs frameworks using wrk

Notifications You must be signed in to change notification settings

hbakhtiyor/node-frameworks-benchmark

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Simple HTTP benchmark for different nodejs frameworks using wrk

Prerequisites

Installation

git clone git@github.com:hbakhtiyor/node-frameworks-benchmark.git && cd node-frameworks-benchmark
yarn [install]

How to run or automatically it can run after yarn install

make

After finish the make tasks, look at benchmarks.txt file or your console output.

Result of benchmarks without measuring cpu/memory usage

Simple HTTP benchmark results (wrk) with close connection

20220.47 Requests/sec - ukoa.js
13594.83 Requests/sec - ufeathers.js
12812.89 Requests/sec - uexpress.js
4204.16 Requests/sec - total/total.js
3043.56 Requests/sec - rawnode.js
2365.02 Requests/sec - feathers.js
2242.12 Requests/sec - koa.js
1784.28 Requests/sec - micro.js
1698.33 Requests/sec - express.js
1443.69 Requests/sec - restify.js
512.29 Requests/sec - hapi.js
158.26 Requests/sec - uws.js

Simple HTTP benchmark results (wrk) with keep-alive connection

54232.14 Requests/sec - uws.js
21036.52 Requests/sec - ukoa.js
13547.05 Requests/sec - ufeathers.js
13213.85 Requests/sec - micro.js
12514.36 Requests/sec - uexpress.js
12427.84 Requests/sec - rawnode.js
8597.81 Requests/sec - total/total.js
7594.78 Requests/sec - koa.js
5600.86 Requests/sec - express.js
4775.49 Requests/sec - restify.js
2959.22 Requests/sec - feathers.js
1215.46 Requests/sec - sails/sails.js
1077.86 Requests/sec - hapi.js

Hardware used

  • Intel® Core™ i3-2310M CPU @ 2.10GHz × 4
  • 4Gb RAM

Version

  • Node v7.9.0
  • Ubuntu 17.04 LTS x86_64 OS
  • 4.10.0-20-generic kernel

Notes

  • Some frameworks used with uWebSockets server.
  • This runs a benchmark for 5 minutes, using 12 threads, and keeping 400 HTTP connections open.