microservices-benchmark
Benchmark of microservices frameworks for NodeJS.
Frameworks in benchmark
Package | Version |
---|---|
Seneca | 3.3.0 |
Hemera | 1.1.5 |
Nanoservices | 0.0.11 |
Moleculer | 0.7.1 |
Test runner computer
Windows_NT 6.1.7601 x64
Node.JS: 6.10.0
V8: 5.1.281.93
Intel(R) Core(TM) i7-4770K CPU @ 3.50GHz × 8
Local (in-memory) requests
Result
Suite: Call local actions
√ Seneca* 12,081 rps
√ Nanoservices* 64,921 rps
√ Moleculer* 723,033 rps
Seneca* (#) 0% (12,081 rps) (avg: 82μs)
Nanoservices* +437.4% (64,921 rps) (avg: 15μs)
Moleculer* +5,885.11% (723,033 rps) (avg: 1μs)
Remote (via NATS) requests
Result
Suite: Call remote actions
√ Seneca* 2,140 rps
√ Hemera* 4,354 rps
√ Moleculer* 8,664 rps
Seneca* (#) 0% (2,140 rps) (avg: 467μs)
Hemera* +103.42% (4,354 rps) (avg: 229μs)
Moleculer* +304.81% (8,664 rps) (avg: 115μs)
Run benchmark
Install dependencies
$ npm install
or
$ yarn
For remote test need to install a NATS server too.
Start nats server (gnatsd
) and
$ npm run bench local
$ npm run bench remote