Skip to content

BlueRexPY/WebApiPerfromance

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

69 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Web API Performance Comparison

JavaScript TypeScript Python Rust Go Elixir Erlang C# F# Java Kotlin Haskell C++ C Swift Ruby PHP Crystal Gleam Zig Ada COBOL Pascal Fortran

Bun Deno Node.js

Fastify Express NestJS Hono Koa uWebSockets

FastAPI Django Flask Litestar

Spring Boot Spring WebFlux Quarkus Micronaut Ktor

.NET

Phoenix Rails Laravel Vapor

This repository contains performance-focused web API implementations across 23 languages and 80+ frameworks/runtimes:

The APIs expose two endpoints: a simple "Hello World" (GET /) and a more complex "Orders" endpoint (GET /orders).

Benchmark Results

Test Configuration: wrk -t 2 -c 120 -d 20s β€” 2 threads, 120 connections, 20 seconds
Tested: 2026-02-25 07:41:39 UTC

Hello World (GET /)

Framework Port Req/sec Avg Latency Max Latency Total Requests Transfer/sec Memory
Rust Actix 8005 204,901.52 563.69us 51.45ms 4,098,380 26.38MB 5.477MiB
Haskell Servant 8006 185,813.73 703.71us 84.63ms 3,716,357 33.85MB 297.1MiB
JS Deno Parallel 8048 167,880.22 841.65us 62.51ms 3,358,386 25.30MB 72.3MiB
Rust Axum 8022 160,085.78 714.95us 47.65ms 3,202,007 20.61MB 3.754MiB
JS Node Fastify Cluster 8042 154,504.70 1.60ms 197.81ms 3,090,521 29.17MB 67.56MiB
JS Node uWS 8064 146,561.93 0.87ms 38.71ms 2,931,886 21.25MB 12.59MiB
JS Deno 8011 142,008.63 0.89ms 55.51ms 2,840,349 21.40MB 108.3MiB
JS Node uWS Cluster 8068 138,801.06 0.85ms 45.88ms 2,776,366 20.12MB 35.39MiB
JS Bun 8002 138,779.81 0.99ms 89.17ms 2,775,838 17.87MB 61.32MiB
JS Node Bun Cluster 8047 133,348.37 1.37ms 53.44ms 2,668,839 17.17MB 44.05MiB
JS Bun Hono 8051 130,175.76 1.00ms 77.87ms 2,603,818 18.50MB 21.14MiB
JS Node Koa Cluster 8044 128,326.33 1.44ms 148.60ms 2,566,940 24.11MB 64.74MiB
JS Node NestJS Fastify Cluster 8046 125,338.02 1.67ms 204.23ms 2,507,133 23.67MB 86.33MiB
JS Bun Koa Cluster 8058 124,823.41 3.10ms 133.26ms 2,497,100 17.86MB 126.5MiB
JS Bun Express Cluster 8055 111,382.24 2.99ms 84.28ms 2,227,946 15.93MB 124.7MiB
JS Bun Fastify 8050 109,846.64 1.28ms 74.82ms 2,197,276 15.71MB 47.46MiB
Erlang Cowboy 8010 108,596.31 1.18ms 69.26ms 2,172,176 15.64MB 110.1MiB
JS Bun Hono Cluster 8057 104,025.87 1.65ms 63.01ms 2,080,852 14.78MB 52.55MiB
JS Bun NestJS Fastify Cluster 8060 103,569.44 3.32ms 84.12ms 2,072,523 14.82MB 161.6MiB
Crystal Kemal 8061 101,919.44 1.19ms 37.71ms 2,038,644 17.50MB 15.11MiB
F# AOT Dapper 8078 101,445.39 5.68ms 77.67ms 2,029,641 17.99MB 16.78MiB
JS Node Fastify 8003 100,921.74 1.64ms 245.68ms 2,018,702 19.06MB 90.28MiB
JS Bun NestJS Fastify 8054 99,648.49 1.45ms 100.88ms 1,993,263 14.25MB 68.2MiB
JS Bun Fastify Cluster 8056 99,086.78 3.31ms 88.55ms 1,982,099 14.17MB 237.7MiB
JS Bun Express 8049 98,480.07 1.36ms 90.91ms 1,969,829 14.09MB 55.44MiB
C# Carter AOT EF Core 8074 96,485.39 4.62ms 73.46ms 1,929,793 17.11MB 50.23MiB
JS Bun NestJS Express Cluster 8059 95,976.10 3.06ms 95.22ms 1,919,943 19.68MB 160.8MiB
C# Carter AOT Dapper 8075 93,110.08 6.52ms 75.16ms 1,863,982 16.52MB 36.98MiB
JS Node Hono Cluster 8043 92,498.68 2.27ms 261.50ms 1,850,262 16.05MB 65.12MiB
JS Bun Koa 8052 88,181.55 1.56ms 67.38ms 1,763,855 12.61MB 60.54MiB
JS Node NestJS Fastify 8030 87,719.48 1.86ms 244.97ms 1,754,643 16.56MB 33.78MiB
C Microhttpd 8018 87,121.48 13.23ms 99.02ms 1,742,720 11.22MB 5.348MiB
C# .NET API 8001 85,108.64 5.18ms 82.93ms 1,702,806 15.10MB 41.55MiB
C# Carter 8035 83,960.09 4.17ms 83.95ms 1,679,575 14.89MB 34.27MiB
C# Carter AOT 8036 80,958.61 5.82ms 74.65ms 1,619,425 14.36MB 33.73MiB
JS Bun NestJS Express 8053 76,837.89 1.74ms 78.85ms 1,536,990 15.75MB 71.61MiB
C# EF Core 8070 73,428.55 4.27ms 83.62ms 1,469,842 13.03MB 31.75MiB
C# .NET AOT 8013 70,931.65 6.73ms 75.12ms 1,419,164 12.58MB 38.66MiB
C# Carter Dapper 8073 70,884.07 5.28ms 80.57ms 1,418,893 12.57MB 31.7MiB
F# EF Core 8076 70,492.79 5.35ms 79.70ms 1,410,387 12.50MB 33.68MiB
Elixir Plug 8034 69,919.49 2.07ms 71.02ms 1,398,547 14.54MB 160.5MiB
C# Dapper 8071 69,819.14 5.41ms 81.09ms 1,396,663 12.38MB 32.15MiB
F# .NET API 8019 68,064.85 4.25ms 76.61ms 1,362,255 12.07MB 34.86MiB
F# Dapper 8077 67,658.45 6.23ms 80.07ms 1,353,427 12.00MB 33.91MiB
Elixir Phoenix 8007 67,091.97 2.12ms 88.15ms 1,342,011 16.25MB 186.7MiB
Crystal Lucky 8062 66,714.76 1.80ms 21.13ms 1,334,446 16.03MB 14.34MiB
C# EF Core AOT 8069 65,272.32 6.33ms 93.57ms 1,305,667 11.58MB 52.84MiB
F# .NET AOT 8020 65,174.10 5.84ms 76.28ms 1,303,753 11.56MB 34.91MiB
JS Node Koa 8038 57,831.27 2.62ms 306.44ms 1,156,768 10.86MB 26.36MiB
C++ Drogon 8017 57,398.12 13.89ms 72.96ms 1,148,704 9.42MB 15.43MiB
C# Carter EF Core 8072 55,641.79 7.58ms 84.43ms 1,114,093 9.87MB 32.57MiB
Zig zap 8024 46,060.17 14.64ms 78.95ms 922,067 8.79MB 31.94MiB
JS Node Hono 8039 42,931.40 3.86ms 420.64ms 858,748 7.45MB 28.5MiB
JS Node Express Cluster 8041 41,453.36 4.91ms 301.45ms 829,224 7.79MB 85.52MiB
Swift Vapor 8012 39,226.07 3.14ms 89.18ms 784,615 6.51MB 38.1MiB
COBOL GnuCOBOL 8081 37,180.36 2.35ms 49.67ms 744,322 4.15MB 20.85MiB
C libuv 8031 36,984.32 2.60ms 40.81ms 740,036 4.13MB 4.035MiB
PHP Swoole 8028 36,746.54 18.87ms 96.30ms 734,981 6.55MB 47.66MiB
Java Quarkus 8021 36,468.24 10.92ms 121.21ms 729,580 3.90MB 160.3MiB
Go Fiber 8008 33,699.88 18.91ms 136.12ms 674,858 4.82MB 13.04MiB
Ruby Falcon 8040 33,294.17 11.29ms 63.36ms 666,781 3.84MB 89.22MiB
Java Micronaut 8026 32,341.25 13.54ms 89.91ms 648,245 4.16MB 173.4MiB
JS Node NestJS Express Cluster 8045 32,234.77 6.27ms 377.36ms 644,756 8.05MB 102.5MiB
Java Spring Boot 8009 31,265.68 13.21ms 170.99ms 625,607 2.92MB 144.2MiB
JS Node Express 8014 28,702.16 4.95ms 375.47ms 574,069 5.39MB 101.7MiB
Go Gin 8066 27,973.53 19.85ms 146.98ms 560,841 4.00MB 21.64MiB
Kotlin Ktor 8027 26,392.53 13.53ms 108.33ms 527,895 2.47MB 173.5MiB
Python FastAPI 8004 26,128.34 12.14ms 68.81ms 522,898 3.79MB 209.5MiB
JS Node NestJS Express 8029 22,594.41 7.17ms 539.74ms 451,933 5.65MB 45.64MiB
Java Spring WebFlux 8065 22,165.38 14.36ms 163.75ms 443,923 2.07MB 142.1MiB
Go Chi 8023 20,670.33 21.06ms 94.38ms 413,480 2.68MB 18.82MiB
Go net/http 8032 19,104.87 21.36ms 133.70ms 382,352 2.48MB 17.21MiB
Python Litestar 8000 13,861.22 19.59ms 78.61ms 277,275 2.01MB 184.7MiB
Gleam Wisp 8063 12,317.78 13.37ms 63.39ms 246,535 2.04MB 93.26MiB
Ada (GNAT.Sockets) 8079 11,495.25 13.88ms 79.92ms 230,215 1.28MB 3.809MiB
Fortran GFortran 8083 5,468.92 25.08ms 76.96ms 109,588 624.87KB 5.504MiB
Ruby Sinatra 8033 3,419.24 132.06ms 700.13ms 68,422 440.74KB 63.75MiB
PHP Laravel 8037 3,299.74 45.12ms 281.49ms 66,111 712.15KB 156.8MiB
Ruby Rails 8015 3,103.00 44.47ms 1.16s 62,156 869.69KB 296.5MiB
Python Flask 8067 2,727.53* 40.40ms 232.01ms 54,601 460.80KB 89.76MiB
Pascal fpWeb 8082 2,194.52* 236.76ms 1.90s 43,899 246.46KB 3.758MiB
Python Django 8016 1,082.71* 149.23ms 1.69s 21,723 319.34KB 437.3MiB

NOTE: * = Non-2xx/3xx responses or socket errors occurred

Orders (GET /orders)

Framework Port Req/sec Avg Latency Max Latency Total Requests Transfer/sec Memory
JS Node Bun Cluster 8047 27,628.28 4.36ms 24.95ms 552,627 294.84MB 47.51MiB
JS Bun Hono Cluster 8057 27,308.21 4.41ms 22.64ms 546,327 291.79MB 60.23MiB
JS Deno Parallel 8048 18,937.49 6.33ms 17.64ms 378,848 202.51MB 76.05MiB
JS Bun Hono 8051 15,884.25 7.55ms 28.31ms 317,760 169.72MB 24.7MiB
JS Bun 8002 15,455.76 7.76ms 25.50ms 309,152 164.94MB 71.47MiB
Rust Axum 8022 14,961.55 11.05ms 273.42ms 299,291 162.52MB 9.605MiB
JS Bun Express 8049 14,649.64 8.19ms 39.19ms 293,110 156.54MB 58.61MiB
C# Carter AOT EF Core 8074 11,542.63 16.35ms 92.28ms 231,351 122.63MB 75.02MiB
F# AOT Dapper 8078 11,107.95 15.50ms 89.47ms 222,335 119.07MB 35.24MiB
C# .NET AOT 8013 11,097.91 16.17ms 104.75ms 222,126 117.90MB 61.38MiB
C# EF Core AOT 8069 10,837.59 16.96ms 94.23ms 217,138 115.14MB 120.9MiB
C Microhttpd 8018 10,254.81 25.10ms 186.54ms 205,312 111.26MB 5.809MiB
C# Carter AOT Dapper 8075 10,180.90 18.66ms 98.35ms 203,973 108.16MB 58.77MiB
Rust Actix 8005 10,015.38 14.88ms 171.72ms 200,328 108.79MB 12.2MiB
F# Dapper 8077 9,663.76 19.07ms 93.33ms 193,584 102.67MB 72.45MiB
C# Carter 8035 9,483.80 19.69ms 94.97ms 189,802 100.76MB 58.09MiB
C# .NET API 8001 8,885.70 20.70ms 100.33ms 177,834 94.40MB 70.48MiB
C# Carter Dapper 8073 8,841.10 20.51ms 97.02ms 177,008 93.93MB 71.13MiB
Java Quarkus 8021 8,660.41 27.97ms 830.87ms 173,299 91.50MB 206.4MiB
C# Carter AOT 8036 8,353.54 20.49ms 98.74ms 167,376 88.75MB 49.17MiB
Zig zap 8024 8,331.74 27.98ms 106.42ms 167,054 90.92MB 35.02MiB
F# .NET AOT 8020 8,228.84 19.39ms 93.36ms 164,780 88.21MB 58.41MiB
F# .NET API 8019 8,107.83 21.66ms 95.25ms 162,566 86.14MB 57.63MiB
C# Dapper 8071 7,858.15 21.71ms 114.75ms 157,322 83.48MB 60.66MiB
JS Node Express 8014 7,062.54 21.13ms 973.39ms 141,295 75.79MB 104MiB
Ruby Falcon 8040 7,012.41 26.65ms 733.92ms 140,349 75.99MB 112.8MiB
Go Gin 8066 6,719.73 29.75ms 372.20ms 134,574 73.76MB 60.76MiB
JS Bun NestJS Fastify Cluster 8060 6,619.76 19.69ms 321.59ms 132,426 70.74MB 182MiB
JS Bun Koa Cluster 8058 6,267.72 24.85ms 678.06ms 125,408 66.98MB 131MiB
Elixir Plug 8034 5,976.94 20.40ms 150.91ms 119,584 65.40MB 209.5MiB
JS Bun Fastify Cluster 8056 5,866.15 27.04ms 697.98ms 117,354 62.69MB 169.9MiB
JS Bun NestJS Express Cluster 8059 5,637.79 22.54ms 350.10ms 112,797 60.61MB 173.1MiB
JS Node Fastify Cluster 8042 5,576.88 22.43ms 369.66ms 111,555 59.85MB 92.59MiB
PHP Swoole 8028 5,500.98 32.79ms 208.24ms 110,352 59.96MB 54.55MiB
JS Node Koa Cluster 8044 5,395.38 23.29ms 432.50ms 107,990 57.90MB 89.57MiB
JS Bun Express Cluster 8055 5,383.80 25.50ms 522.14ms 107,705 57.53MB 160MiB
Elixir Phoenix 8007 5,369.43 22.34ms 64.47ms 107,447 58.93MB 213.6MiB
JS Node uWS Cluster 8068 5,155.84 24.26ms 320.72ms 103,135 55.10MB 82.21MiB
Go Chi 8023 4,929.02 36.65ms 653.67ms 98,804 54.04MB 62.18MiB
Go net/http 8032 4,927.33 36.62ms 677.12ms 98,605 54.02MB 59.77MiB
JS Node Express Cluster 8041 4,784.64 26.83ms 497.11ms 95,720 51.34MB 92.03MiB
Go Fiber 8008 4,655.43 37.94ms 732.37ms 93,423 51.02MB 54.62MiB
JS Node Hono Cluster 8043 4,578.65 28.34ms 541.61ms 91,593 49.07MB 90.64MiB
JS Node NestJS Fastify Cluster 8046 4,541.06 29.08ms 815.96ms 90,849 48.73MB 112.9MiB
JS Bun NestJS Fastify 8054 4,442.57 29.65ms 457.81ms 88,884 47.47MB 93.96MiB
JS Bun NestJS Express 8053 4,380.24 27.53ms 144.06ms 87,619 47.09MB 81.44MiB
JS Bun Koa 8052 4,221.26 34.09ms 719.09ms 84,466 45.11MB 63.89MiB
JS Bun Fastify 8050 4,174.03 32.39ms 616.92ms 83,500 44.60MB 74.01MiB
JS Node NestJS Express Cluster 8045 4,094.54 31.76ms 833.64ms 81,911 44.20MB 109.9MiB
JS Node Fastify 8003 3,846.61 35.55ms 701.60ms 76,981 41.28MB 108.2MiB
Python Litestar 8000 3,776.86 34.83ms 162.60ms 75,553 41.09MB 197.5MiB
JS Node Koa 8038 3,750.58 33.74ms 765.63ms 75,029 40.25MB 47.28MiB
C# EF Core 8070 3,502.58 39.30ms 204.96ms 70,255 37.21MB 91.77MiB
JS Node NestJS Fastify 8030 3,393.83 39.34ms 1.03s 67,904 36.42MB 50.28MiB
Erlang Cowboy 8010 3,389.72 35.37ms 104.03ms 67,829 34.61MB 170.4MiB
Python FastAPI 8004 3,385.60 36.43ms 90.21ms 67,720 36.83MB 219.2MiB
JS Node uWS 8064 3,239.11 37.44ms 309.31ms 64,792 34.62MB 43.41MiB
Ada (GNAT.Sockets) 8079 3,234.96 40.82ms 104.05ms 64,829 35.04MB 5.969MiB
JS Node Hono 8039 3,068.89 40.59ms 706.47ms 61,399 32.89MB 49.7MiB
COBOL GnuCOBOL 8081 2,941.64 43.00ms 100.59ms 58,872 31.87MB 21.09MiB
JS Node NestJS Express 8029 2,785.96 49.84ms 1.23s 55,753 30.07MB 53.66MiB
F# EF Core 8076 2,532.90 49.01ms 295.17ms 50,838 26.91MB 104.4MiB
C libuv 8031 2,484.98* 42.26ms 220.51ms 49,744 26.92MB 9.461MiB
C# Carter EF Core 8072 2,420.60 51.28ms 309.41ms 48,483 25.72MB 83.34MiB
PHP Laravel 8037 2,165.20 60.50ms 273.60ms 43,316 23.67MB 161.7MiB
Gleam Wisp 8063 2,126.94 56.37ms 159.72ms 42,581 23.16MB 120.3MiB
C++ Drogon 8017 1,889.10 66.90ms 394.96ms 37,859 20.56MB 44.86MiB
JS Deno 8011 1,662.90 72.51ms 311.88ms 33,311 17.78MB 177MiB
Python Flask 8067 1,616.70* 74.86ms 204.13ms 32,388 17.62MB 90.04MiB
Ruby Sinatra 8033 1,246.67 229.73ms 1.18s 24,955 13.52MB 66.74MiB
Kotlin Ktor 8027 1,026.68* 139.66ms 1.29s 20,590 11.12MB 213.5MiB
Java Micronaut 8026 978.53 136.32ms 942.33ms 19,607 10.43MB 206.2MiB
Haskell Servant 8006 796.44* 135.25ms 1.95s 15,974 8.68MB 317.1MiB
Swift Vapor 8012 579.65 206.29ms 698.48ms 11,633 5.99MB 60.86MiB
Java Spring Boot 8009 571.97* 241.20ms 2.00s 11,449 6.52MB 231.1MiB
Java Spring WebFlux 8065 542.12* 217.04ms 1.91s 10,868 6.03MB 236.4MiB
Crystal Kemal 8061 483.99 270.64ms 1.18s 9,689 5.00MB 35.81MiB
Python Django 8016 470.49* 265.57ms 1.99s 9,428 5.19MB 490.1MiB
Crystal Lucky 8062 465.35 276.11ms 1.18s 9,318 4.84MB 51.9MiB
Ruby Rails 8015 423.29* 194.37ms 1.80s 8,486 4.58MB 318.1MiB
Pascal fpWeb 8082 322.28* 393.40ms 2.00s 6,450 4.01MB 5.184MiB
Fortran GFortran 8083 0.05 1.99ms 1.99ms 1 567.46B 14.47MiB

NOTE: * = Non-2xx/3xx responses or socket errors occurred

About

πŸ“Š Web API Performance Comparison

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •