Skip to content

graphql-crystal/benchmarks

Folders and files

NameName
Last commit message
Last commit date

Latest commit

da37160 · Oct 4, 2024
May 30, 2024
Nov 28, 2023
Apr 10, 2022
Nov 8, 2023
Sep 26, 2024
Nov 14, 2023
Sep 9, 2023
Sep 29, 2024
Jul 10, 2022
Nov 18, 2022
May 31, 2024
Sep 30, 2024
Sep 30, 2024
Sep 29, 2024
Oct 1, 2024
Dec 17, 2023
Sep 30, 2024
Sep 30, 2024
Jun 3, 2024
Sep 30, 2024
May 30, 2024
Oct 3, 2024
Nov 18, 2022
Sep 9, 2022
Jul 10, 2022
Oct 4, 2024
Jul 10, 2022
Apr 10, 2022
Nov 18, 2022
Apr 7, 2022
Jul 19, 2022
Oct 4, 2024
May 30, 2024
Apr 8, 2022
May 30, 2024
May 30, 2024

Repository files navigation

GraphQL server benchmarks

Graphql server benchmarks in many languages. Pull requests welcome, please read CONTRIBUTING.md

All servers implement a simple schema:

type Query {
  hello: String!
}

The returned string is always world.

The API is served over HTTP using a common web server and load tested using bombardier.

Results

Name Language Server Latency avg Requests
static-rust Rust Actix Web 1.79ms 110kps
graphql-crystal Crystal Kemal 2.93ms 68kps
gqlgen Go net/http 3.67ms 54kps
async-graphql Rust Actix Web 4.44ms 45kps
Juniper Rust Actix Web 5.16ms 39kps
Hot Chocolate C# ASP.NET 8.14ms 25kps
Mercurius Node.js Fastify 8.55ms 23kps
graphql-go Go net/http 9.96ms 20kps
GraphqlD D Vibe.d 11.04ms 18kps
agoo Ruby/C agoo 12.53ms 16kps
graphql-yoga Node.js http 13.66ms 15kps
graphql-jit Node.js http 19.11ms 10kps
Absinthe Elixir Phoenix 23.16ms 8.6kps
Hono Bun HonoJS 27.55ms 7.3kps
apollo Node.js Express 32.27ms 6.2kps
graphql-ruby Ruby Puma 44.76ms 5.7kps
nim-graphql Nim Chronos 54.42ms 3.8kps
graphql-js Node.js http 52.83ms 3.8kps
Sangria Scala Akka HTTP 97.18ms 2.0kps
Graphene Python gunicorn 116.19ms 1.7kps
Strawberry Python gunicorn 117.29ms 1.7kps