In Linux runnervmejwal 6.17.0-1022-azure #22-Ubuntu SMP Mon Jul 27 17:24:03 UTC 2026 x86_64 x86_64 x86_64 GNU/Linux,

Memory Usage: 1440/15988MB (9.01%)
Disk Usage: 61/145GB (42%)
CPU Load: 1.06
CPU core count:4
CPUs
cpu MHz		: 3600.734
cpu MHz		: 3600.370
cpu MHz		: 3560.678
cpu MHz		: 3542.892

Below is total package generation times for separate modules,

[INFO] [INFO] Avaje Jex Example 3.6 .............................. SUCCESS [  0.189 s]
[INFO] [INFO] Avaje Jex Robaho Example 3.6 ....................... SUCCESS [  0.010 s]
[INFO] [INFO] eclipse-microprofile-kumuluz-test 4.1.0 ............ SUCCESS [  0.244 s]
[INFO] [INFO] ktor-demo 3.5.2-kotlin-2.4.10 ...................... SUCCESS [  1.033 s]
[INFO] [INFO] micronaut-demo 5.1.3 ............................... SUCCESS [  1.078 s]
[INFO] [INFO] quarkus-demo 3.39.2 ................................ SUCCESS [  0.744 s]
[INFO] [INFO] springboot-webflux-demo 4.1.1 ...................... SUCCESS [  0.111 s]
[INFO] [INFO] springboot-demo-web 4.1.1 .......................... SUCCESS [  0.015 s]
[INFO] [INFO] vertx-demo 5.1.7 ................................... SUCCESS [  0.052 s]
[INFO] Avaje Jex Example 3.6 .............................. SUCCESS [  2.296 s]
[INFO] Avaje Jex Robaho Example 3.6 ....................... SUCCESS [  2.341 s]
[INFO] eclipse-microprofile-kumuluz-test 4.1.0 ............ SUCCESS [  3.902 s]
[INFO] ktor-demo 3.5.2-kotlin-2.4.10 ...................... SUCCESS [  8.833 s]
[INFO] micronaut-demo 5.1.3 ............................... SUCCESS [ 19.739 s]
[INFO] quarkus-demo 3.39.2 ................................ SUCCESS [ 10.735 s]
[INFO] springboot-webflux-demo 4.1.1 ...................... SUCCESS [  1.767 s]
[INFO] springboot-demo-web 4.1.1 .......................... SUCCESS [  1.766 s]
[INFO] vertx-demo 5.1.7 ................................... SUCCESS [  3.746 s]

Size of created packages:

Size in MB Name
2.6M ./avaje-jex-jdk/target/avaje-jex-jdk-3.6.jar
2.6M ./avaje-jex-jdk/target/original-avaje-jex-jdk-3.6.jar
2.8M ./avaje-jex-robaho/target/avaje-jex-robaho-3.6.jar
2.8M ./avaje-jex-robaho/target/original-avaje-jex-robaho-3.6.jar
22M ./eclipse-microprofile-kumuluz-test/target/eclipse-microprofile-kumuluz-test-4.1.0.jar
21M ./ktor/target/ktor-demo-3.5.2-kotlin-2.4.10-jar-with-dependencies.jar
15M ./micronaut/target/micronaut-demo-5.1.3.jar
20M ./quarkus/target/quarkus-demo-runner.jar
19M ./spring-boot-web/target/springboot-demo-web-4.1.1.jar
34M ./spring-boot-webflux/target/springboot-webflux-demo-4.1.1.jar
12M ./vertx/target/vertx-demo-5.1.7-fat.jar

Avaje Jex started class sun.net.httpserver.HttpServerImpl in 24ms on TCP http://0:0:0:0:0:0:0:0:8080

---- Global Information --------------------------------------------------------
> request count       291589
> min response time   50.22µs
> max response time   2.11s
> mean response time  10.3ms
> p(90) response time 21.43ms
> p(95) response time 27.67ms
> mean requests/sec   18164.677371

started class robaho.net.httpserver.HttpServerImpl in 44ms on TCP http://0.0.0.0:8080

---- Global Information --------------------------------------------------------
> request count       445138
> min response time   22.94µs
> max response time   110.76ms
> mean response time  9.43ms
> p(90) response time 22.27ms
> p(95) response time 28.82ms
> mean requests/sec   29631.458227

:: Spring Boot :: (v4.1.1) Started DemoWebFluxApplication in 1.333 seconds (process running for 1.732)

---- Global Information --------------------------------------------------------
> request count       221199
> min response time   68.96µs
> max response time   133.23ms
> mean response time  18.37ms
> p(90) response time 34.41ms
> p(95) response time 50.16ms
> mean requests/sec   14720.325407

:: Spring Boot :: (v4.1.1) Started DemoApplication in 1.313 seconds (process running for 1.692)

---- Global Information --------------------------------------------------------
> request count       249036
> min response time   91.63µs
> max response time   137.44ms
> mean response time  16.13ms
> p(90) response time 32.07ms
> p(95) response time 45.99ms
> mean requests/sec   16568.592867

powered by Quarkus 3.39.2) started in 0.877s. Listening on: http://0.0.0.0:8080

---- Global Information --------------------------------------------------------
> request count       197728
> min response time   99.87µs
> max response time   201.99ms
> mean response time  20.74ms
> p(90) response time 43.06ms
> p(95) response time 60.02ms
> mean requests/sec   13145.943785

micronaut version: unknown Startup completed in 582ms. Server Running: http://localhost:8080

---- Global Information --------------------------------------------------------
> request count       375645
> min response time   32.38µs
> max response time   114.98ms
> mean response time  10.92ms
> p(90) response time 23.35ms
> p(95) response time 32.39ms
> mean requests/sec   25004.730087

vertx version:5.1.7

---- Global Information --------------------------------------------------------
> request count       521923
> min response time   20.24µs
> max response time   96.49ms
> mean response time  8.1ms
> p(90) response time 18.79ms
> p(95) response time 25.69ms
> mean requests/sec   34741.062965

kumuluz version:4.1.0 Server – Started Server@75ae4a1f{STARTING}[10.0.9,sto=0] @2066ms

---- Global Information --------------------------------------------------------
> request count       113892
> min response time   225.26µs
> max response time   424.43ms
> mean response time  40.59ms
> p(90) response time 102.11ms
> p(95) response time 128.57ms
> mean requests/sec   7545.407052

ktor:3.5.2

---- Global Information --------------------------------------------------------
> request count       328754
> min response time   38.18µs
> max response time   1.12s
> mean response time  8.41ms
> p(90) response time 19.58ms
> p(95) response time 25.11ms
> mean requests/sec   20456.099097

Rust rest services

rustc 1.98.0 (88d9e12ae 2026-08-18)

warp = { version = 0.4, features = [server] }

---- Global Information --------------------------------------------------------
> request count       582282
> min response time   17.08µs
> max response time   103.48ms
> mean response time  7.32ms
> p(90) response time 18.39ms
> p(95) response time 23.76ms
> mean requests/sec   38682.150658

actix-web = 4.9.0

---- Global Information --------------------------------------------------------
> request count       576896
> min response time   19.16µs
> max response time   103.97ms
> mean response time  7.42ms
> p(90) response time 19.35ms
> p(95) response time 24.28ms
> mean requests/sec   38396.173355

rocket = { version = 0.5.1, features = [json] }

---- Global Information --------------------------------------------------------
> request count       510023
> min response time   29.77µs
> max response time   109.41ms
> mean response time  8.28ms
> p(90) response time 21.1ms
> p(95) response time 26.72ms
> mean requests/sec   33945.745348

axum = 0.8.1

---- Global Information --------------------------------------------------------
> request count       568782
> min response time   18.77µs
> max response time   97.08ms
> mean response time  7.36ms
> p(90) response time 18.72ms
> p(95) response time 23.81ms
> mean requests/sec   37863.130246

Dotnet 7 rest service

---- Global Information --------------------------------------------------------
> request count       456975
> min response time   31.33µs
> max response time   113.06ms
> mean response time  9.28ms
> p(90) response time 23.35ms
> p(95) response time 30.17ms
> mean requests/sec   30373.421106

Dotnet 8 rest service

---- Global Information --------------------------------------------------------
> request count       482213
> min response time   30.24µs
> max response time   104.89ms
> mean response time  8.78ms
> p(90) response time 22.03ms
> p(95) response time 27.83ms
> mean requests/sec   32087.602678

Dotnet 9 rest service

---- Global Information --------------------------------------------------------
> request count       470193
> min response time   30.35µs
> max response time   123.16ms
> mean response time  9.38ms
> p(90) response time 23.58ms
> p(95) response time 31.13ms
> mean requests/sec   31167.564052

Golang rest service

go version go1.24.13 linux/amd64


Golang rest service

---- Global Information --------------------------------------------------------
> request count       503441
> min response time   27.58µs
> max response time   118.29ms
> mean response time  8.46ms
> p(90) response time 21.82ms
> p(95) response time 28.14ms
> mean requests/sec   33401.117495

Express.js rest service

Node.js v22.23.2


Express.js rest service

---- Global Information --------------------------------------------------------
> request count       334198
> min response time   35.43µs
> max response time   718.57ms
> mean response time  14.75ms
> p(90) response time 38.21ms
> p(95) response time 46.74ms
> mean requests/sec   22102.446498

Bun rest service

Bun 1.4.2


Bun rest service

---- Global Information --------------------------------------------------------
> request count       553945
> min response time   22.58µs
> max response time   112.5ms
> mean response time  7.66ms
> p(90) response time 19.66ms
> p(95) response time 25.55ms
> mean requests/sec   36707.689072

graalvm native avaje-jex-jdk

---- Global Information --------------------------------------------------------
> request count       367357
> min response time   46.51µs
> max response time   2.14s
> mean response time  7.63ms
> p(90) response time 17.83ms
> p(95) response time 22.98ms
> mean requests/sec   22861.672197

graalvm native avaje-jex-robaho

---- Global Information --------------------------------------------------------
> request count       450558
> min response time   32.96µs
> max response time   134.99ms
> mean response time  9.3ms
> p(90) response time 24.25ms
> p(95) response time 31.58ms
> mean requests/sec   29964.520634

graalvm native quarkus

---- Global Information --------------------------------------------------------
> request count       302618
> min response time   62.28µs
> max response time   141.06ms
> mean response time  13.74ms
> p(90) response time 34.79ms
> p(95) response time 44.4ms
> mean requests/sec   20038.731864

graalvm native micronaut

---- Global Information --------------------------------------------------------
> request count       390573
> min response time   40.56µs
> max response time   153.54ms
> mean response time  10.34ms
> p(90) response time 27.86ms
> p(95) response time 35.75ms
> mean requests/sec   25978.429177

graalvm native spring-boot-web

---- Global Information --------------------------------------------------------
> request count       279948
> min response time   55.47µs
> max response time   229.99ms
> mean response time  16.01ms
> p(90) response time 39.32ms
> p(95) response time 52.77ms
> mean requests/sec   18600.149904

graalvm native spring-boot-webflux

---- Global Information --------------------------------------------------------
> request count       286761
> min response time   67.65µs
> max response time   274.42ms
> mean response time  16.09ms
> p(90) response time 39.5ms
> p(95) response time 55.65ms
> mean requests/sec   19069.057519

graalvm native vertx

---- Global Information --------------------------------------------------------
> request count       490496
> min response time   29.53µs
> max response time   133.94ms
> mean response time  9.14ms
> p(90) response time 23.57ms
> p(95) response time 32.92ms
> mean requests/sec   32632.662422

graalvm native ktor rest service

---- Global Information --------------------------------------------------------
> request count       374291
> min response time   48.19µs
> max response time   2.91s
> mean response time  9.22ms
> p(90) response time 16.94ms
> p(95) response time 22.49ms
> mean requests/sec   21300.102808

GraalVM Native Binaries Sizes:

Size in MB Name
49 quarkus-demo-runner-bin
63 micronaut-demo-bin
72 springboot-demo-web-bin
100 springboot-webflux-demo-bin
51 vertx-demo-bin
51 ktor-demo-bin

source code for the java and dotnet tests 👈 source code for the rust tests 👈 github action 👈

Framework ⇅ Requests ⇅ Min ⇅ Max ⇅ Mean ⇅ P90 ⇅ P95 ⇅ Req/Sec ⇅
AVAJE29158950.22µs2.11s10.3ms21.43ms27.67ms18164.677371
ROBAHO44513822.94µs110.76ms9.43ms22.27ms28.82ms29631.458227
Started DemoWebFluxApplication22119968.96µs133.23ms18.37ms34.41ms50.16ms14720.325407
Started DemoApplication24903691.63µs137.44ms16.13ms32.07ms45.99ms16568.592867
QUARKUS19772899.87µs201.99ms20.74ms43.06ms60.02ms13145.943785
Startup completed in37564532.38µs114.98ms10.92ms23.35ms32.39ms25004.730087
VERTX52192320.24µs96.49ms8.1ms18.79ms25.69ms34741.062965
Server -- Started113892225.26µs424.43ms40.59ms102.11ms128.57ms7545.407052
KTOR32875438.18µs1.12s8.41ms19.58ms25.11ms20456.099097
WARP58228217.08µs103.48ms7.32ms18.39ms23.76ms38682.150658
ACTIX57689619.16µs103.97ms7.42ms19.35ms24.28ms38396.173355
ROCKET51002329.77µs109.41ms8.28ms21.1ms26.72ms33945.745348
AXUM56878218.77µs97.08ms7.36ms18.72ms23.81ms37863.130246
Dotnet 7 rest service45697531.33µs113.06ms9.28ms23.35ms30.17ms30373.421106
Dotnet 8 rest service48221330.24µs104.89ms8.78ms22.03ms27.83ms32087.602678
Dotnet 9 rest service47019330.35µs123.16ms9.38ms23.58ms31.13ms31167.564052
Golang rest service50344127.58µs118.29ms8.46ms21.82ms28.14ms33401.117495
Express.js rest service33419835.43µs718.57ms14.75ms38.21ms46.74ms22102.446498
Bun rest service55394522.58µs112.5ms7.66ms19.66ms25.55ms36707.689072
graalvm native avaje-jex-jdk36735746.51µs2.14s7.63ms17.83ms22.98ms22861.672197
graalvm native avaje-jex-robaho45055832.96µs134.99ms9.3ms24.25ms31.58ms29964.520634
graalvm native quarkus30261862.28µs141.06ms13.74ms34.79ms44.4ms20038.731864
graalvm native micronaut39057340.56µs153.54ms10.34ms27.86ms35.75ms25978.429177
graalvm native spring-boot-web27994855.47µs229.99ms16.01ms39.32ms52.77ms18600.149904
graalvm native spring-boot-webflux28676167.65µs274.42ms16.09ms39.5ms55.65ms19069.057519
graalvm native vertx49049629.53µs133.94ms9.14ms23.57ms32.92ms32632.662422
graalvm native ktor rest service37429148.19µs2.91s9.22ms16.94ms22.49ms21300.102808