DomenicoColandrea86 / node-graphql-benchmarks

Benchmarks for different Node.js GraphQL Servers

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

TL;DR

  • graphql-jit helps
  • apollo-server adds overhead
  • tracing resolvers kills performance
  • type-graphql adds overhead

Usage

git clone https://github.com/DomenicoColandrea86/node-graphql-benchmarks.git
cd benchmarks
npm install
npm start

Benchmarks

duration: 5s connections: 5 pipelining: 1

Server Requests/s Latency Throughput/Mb
go-graphql 49168.0 0.01 81.68
uWebSockets-graphql+jit 13061.6 0.02 80.36
core-graphql-jit-str 9383.2 0.04 58.33
core-graphql-jit-buf 9272.8 0.04 57.65
core-graphql-jit-buf-fjs 9144.8 0.04 56.83
benzene-http 9050.4 0.04 56.69
mercurius+graphql-jit 8790.0 0.04 55.03
fastify-REST 7885.2 0.07 63.23
mercurius+graphql-compose 5355.6 0.29 33.54
express-REST 5333.2 0.16 43.10
graphql-api-koa+graphql-jit 5306.0 0.28 33.18
mercurius 5249.2 0.30 32.87
mercurius+graphql-jit+type-graphql 5040.4 0.31 31.56
express-gql 4674.0 0.35 29.56
fastify-express-graphql-jit 4658.8 0.36 1.28
fastify-express-graphql-typed-jit 4375.0 0.41 1.20
express-graphql+graphql-jit+graphql-compose 4058.0 0.48 25.67
express-graphql+graphql-jit 4038.0 0.48 25.54
graphql-api-koa 3790.2 0.74 23.70
express-graphql+graphql-jit+type-graphql 3727.0 0.99 23.57
apollo-server-koa+graphql-jit+type-graphql 3674.6 0.67 23.00
fastify-express-grapql-typed 3492.6 1.25 0.96
express-graphql 3198.6 1.27 20.22
express-graphql+graphql-compose 3138.2 1.27 19.85
express-graphql+type-graphql 3076.6 1.27 19.45
apollo-schema+async 3068.2 1.27 19.40
express-graphql-dd-trace-no-plugin 3049.8 1.27 19.28
graphql-compose+async 3010.6 1.28 19.04
type-graphql+middleware 2928.6 1.27 18.52
type-graphql+async 2777.4 1.32 17.56
type-graphql+async-middleware 2755.8 1.34 17.43
apollo-server-express 2486.2 1.48 15.80
apollo-opentracing 1700.0 2.70 10.81
express-graphql-dd-trace-less 1562.0 2.64 9.88
express-graphql-dd-trace 1530.6 2.81 9.68
apollo-server-express-tracing 1505.6 2.87 47.90
yoga-graphql-trace 185.0 30.14 0.08
apollo-server-fastify+graphql-jit 0.0 0.00 0.00
apollo-server-fastify 0.0 0.00 0.00

About

Benchmarks for different Node.js GraphQL Servers

License:MIT License


Languages

Language:JavaScript 90.4%Language:Go 5.5%Language:TypeScript 4.1%