Skip to content

New: Slimeweb -python#575

Merged
MDA2AV merged 8 commits intoMDA2AV:mainfrom
ATOMMAX-2001:slimeweb-python
Apr 20, 2026
Merged

New: Slimeweb -python#575
MDA2AV merged 8 commits intoMDA2AV:mainfrom
ATOMMAX-2001:slimeweb-python

Conversation

@ATOMMAX-2001
Copy link
Copy Markdown
Contributor

Hi, I’m testing my new Python framework, could someone please take a look and confirm if everything is good?

Framework details:
Pypi: https://pypi.org/project/SlimeWeb/

Ty.

@MDA2AV
Copy link
Copy Markdown
Owner

MDA2AV commented Apr 19, 2026

Hey, thanks for submission. I'll check and fix your docker issues tommorow.

@ATOMMAX-2001
Copy link
Copy Markdown
Contributor Author

Ty, This is my first time creating a docker file. Pls let me know if i should modify anything

@MDA2AV
Copy link
Copy Markdown
Owner

MDA2AV commented Apr 20, 2026

Fixed your dockerfile.

You need to look the failing tests now

[test] baseline endpoints
  PASS [GET /baseline11?a=13&b=42]
  PASS [POST /baseline11?a=13&b=42 body=20]
  PASS [POST /baseline11?a=13&b=42 chunked body=20]
[test] baseline anti-cheat (randomized inputs)
  PASS [GET /baseline11?a=745&b=634 (random)]
  PASS [POST body=427 (cache check 1)]
  PASS [POST body=512 (cache check 2)]
[test] baseline TCP fragmentation
  PASS [GET /baseline11 — split request line]
  PASS [GET /baseline11 — split before headers]
  PASS [POST /baseline11 — split headers/body]
  PASS [POST /baseline11 — split body bytes]
[test] pipelined endpoint
  PASS [GET /pipeline]
[test] json endpoint
  PASS [GET /json/{count}?m=X] (4 counts with multipliers verified)
  PASS [GET /json Content-Type] (Content-Type: application/json)
[test] json-comp endpoint
  PASS [json-comp Content-Encoding: br]
  PASS [json-comp response] (3 counts with multipliers, compressed)
  PASS [json-comp per-request] (no Content-Encoding without Accept-Encoding)
[test] upload endpoint
  PASS [POST /upload small body]
  PASS [POST /upload random body] (bytes: 48)
  PASS [POST /upload] (4 sizes verified: 500K, 2M, 10M, 20M)
[test] static endpoint
  FAIL [GET /static/reset.css Content-Type]: expected Content-Type 'text/css', got ''
        → https://www.http-arena.com/docs/test-profiles/h1/isolated/static/validation
  FAIL [GET /static/app.js Content-Type]: expected Content-Type 'application/javascript', got ''
        → https://www.http-arena.com/docs/test-profiles/h1/isolated/static/validation
  FAIL [GET /static/manifest.json Content-Type]: expected Content-Type 'application/json', got ''
        → https://www.http-arena.com/docs/test-profiles/h1/isolated/static/validation
  FAIL [static/reset.css size]: expected 8192 bytes, got 0
        → https://www.http-arena.com/docs/test-profiles/h1/isolated/static/validation
  FAIL [static/layout.css size]: expected 25600 bytes, got 0
        → https://www.http-arena.com/docs/test-profiles/h1/isolated/static/validation
  FAIL [static/theme.css size]: expected 18432 bytes, got 0
        → https://www.http-arena.com/docs/test-profiles/h1/isolated/static/validation
  FAIL [static/components.css size]: expected 204800 bytes, got 0
        → https://www.http-arena.com/docs/test-profiles/h1/isolated/static/validation
  FAIL [static/utilities.css size]: expected 61440 bytes, got 0
        → https://www.http-arena.com/docs/test-profiles/h1/isolated/static/validation
  FAIL [static/analytics.js size]: expected 12288 bytes, got 0
        → https://www.http-arena.com/docs/test-profiles/h1/isolated/static/validation
  FAIL [static/helpers.js size]: expected 22528 bytes, got 0
        → https://www.http-arena.com/docs/test-profiles/h1/isolated/static/validation
  FAIL [static/app.js size]: expected 204800 bytes, got 0
        → https://www.http-arena.com/docs/test-profiles/h1/isolated/static/validation
  FAIL [static/vendor.js size]: expected 307200 bytes, got 0
        → https://www.http-arena.com/docs/test-profiles/h1/isolated/static/validation
  FAIL [static/router.js size]: expected 35840 bytes, got 0
        → https://www.http-arena.com/docs/test-profiles/h1/isolated/static/validation
  FAIL [static/header.html size]: expected 122880 bytes, got 0
        → https://www.http-arena.com/docs/test-profiles/h1/isolated/static/validation
  FAIL [static/footer.html size]: expected 56320 bytes, got 0
        → https://www.http-arena.com/docs/test-profiles/h1/isolated/static/validation
  FAIL [static/regular.woff2 size]: expected 18432 bytes, got 0
        → https://www.http-arena.com/docs/test-profiles/h1/isolated/static/validation
  FAIL [static/bold.woff2 size]: expected 22528 bytes, got 0
        → https://www.http-arena.com/docs/test-profiles/h1/isolated/static/validation
  FAIL [static/logo.svg size]: expected 15344 bytes, got 0
        → https://www.http-arena.com/docs/test-profiles/h1/isolated/static/validation
  FAIL [static/icon-sprite.svg size]: expected 71680 bytes, got 0
        → https://www.http-arena.com/docs/test-profiles/h1/isolated/static/validation
  FAIL [static/hero.webp size]: expected 46080 bytes, got 0
        → https://www.http-arena.com/docs/test-profiles/h1/isolated/static/validation
  FAIL [static/thumb1.webp size]: expected 8192 bytes, got 0
        → https://www.http-arena.com/docs/test-profiles/h1/isolated/static/validation
  FAIL [static/thumb2.webp size]: expected 6144 bytes, got 0
        → https://www.http-arena.com/docs/test-profiles/h1/isolated/static/validation
  FAIL [static/manifest.json size]: expected 2883 bytes, got 0
        → https://www.http-arena.com/docs/test-profiles/h1/isolated/static/validation
  SKIP [static compression] (server does not compress static files)
  PASS [GET /static/nonexistent.txt] (HTTP 404)
[test] async-db endpoint
  FAIL [GET /async-db?limit=7]: count=7, rating=True, tags=False, active=True
        → https://www.http-arena.com/docs/test-profiles/h1/isolated/async-database/validation
  FAIL [GET /async-db?limit=18]: count=18, rating=True, tags=False, active=True
        → https://www.http-arena.com/docs/test-profiles/h1/isolated/async-database/validation
  FAIL [GET /async-db?limit=33]: count=33, rating=True, tags=False, active=True
        → https://www.http-arena.com/docs/test-profiles/h1/isolated/async-database/validation
  FAIL [GET /async-db?limit=50]: count=50, rating=True, tags=False, active=True
        → https://www.http-arena.com/docs/test-profiles/h1/isolated/async-database/validation
  PASS [GET /async-db Content-Type] (Content-Type: application/json)
  PASS [GET /async-db empty range] (count=0)
[test] echo-ws endpoint
[test] WebSocket echo validation (ws://localhost:8080/ws)
  PASS [upgrade status 101] (HTTP/1.1 101 Switching Protocols)
  PASS [Sec-WebSocket-Accept] (correct)
  FAIL [text echo]: sent 'HttpArena-validate-da517b1641b68ab6', got '"HttpArena-validate-da517b1641b68ab6"'
  FAIL [binary echo]: sent 256 bytes, got 0 bytes
  FAIL [multi-message 1/5]: expected 'msg-0-504b545c', got '"msg-0-504b545c"'
  PASS [reject non-upgrade GET /ws] (connection closed (timed out))
[test] post-validation health check
  FAIL [server alive after tests]

@ATOMMAX-2001
Copy link
Copy Markdown
Contributor Author

I've updated the slimeweb package, no code changes. Need to re-validate to test web-socket scenario.

@ATOMMAX-2001
Copy link
Copy Markdown
Contributor Author

/validate -f slimeweb

@MDA2AV
Copy link
Copy Markdown
Owner

MDA2AV commented Apr 20, 2026

just add a comment to code to force a new validation

@ATOMMAX-2001
Copy link
Copy Markdown
Contributor Author

Finally passed 🎊 😭

@MDA2AV
Copy link
Copy Markdown
Owner

MDA2AV commented Apr 20, 2026

/benchmark -f slimeweb

@github-actions
Copy link
Copy Markdown
Contributor

👋 /benchmark request received. A collaborator will review and approve the run.

@github-actions
Copy link
Copy Markdown
Contributor

🚀 Benchmark run triggered for slimeweb (all tests). Results will be posted here when done.

@github-actions
Copy link
Copy Markdown
Contributor

Benchmark Results

Framework: slimeweb | Test: all tests

Test Conn RPS CPU Mem Δ RPS Δ Mem
baseline 512 70,026 1256.8% 190MiB NEW NEW
baseline 4096 73,492 1337.8% 206MiB NEW NEW
pipelined 512 69,434 1218.2% 132MiB NEW NEW
pipelined 4096 70,618 1240.8% 158MiB NEW NEW
limited-conn 512 71,043 1339.9% 121MiB NEW NEW
limited-conn 4096 71,057 1295.4% 212MiB NEW NEW
json 4096 46,738 1919.5% 202MiB NEW NEW
json-comp 512 48,393 2188.2% 173MiB NEW NEW
json-comp 4096 48,840 2191.8% 218MiB NEW NEW
json-comp 16384 47,768 2135.0% 433MiB NEW NEW
upload 32 1,091 2864.1% 1.1GiB NEW NEW
upload 256 1,159 6247.6% 3.9GiB NEW NEW
api-4 256 11,853 247.8% 104MiB NEW NEW
api-16 1024 11,813 379.0% 157MiB NEW NEW
static 1024 12,718 4816.7% 1.1GiB NEW NEW
static 4096 12,156 3654.8% 1.8GiB NEW NEW
static 6800 13,874 5074.9% 1.5GiB NEW NEW
async-db 1024 4,158 194.1% 368MiB NEW NEW
Full log
httparena-bench-slimeweb
httparena-bench-slimeweb

==============================================
=== slimeweb / static / 6800c (tool=wrk) ===
==============================================
[info] waiting for server...
[info] server ready

[run 1/3]
Running 5s test @ http://localhost:8080
  64 threads and 6800 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency   263.18ms  136.83ms   2.00s    68.54%
    Req/Sec   231.54    132.38     2.17k    73.00%
  70817 requests in 5.10s, 1.28GB read
  Socket errors: connect 0, read 0, write 0, timeout 772
Requests/sec:  13874.29
Transfer/sec:    255.81MB
[info] CPU 5074.9% | Mem 1.5GiB

[run 2/3]
Running 5s test @ http://localhost:8080
  64 threads and 6800 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency   338.72ms  267.47ms   1.98s    73.08%
    Req/Sec   193.27     91.96     1.09k    66.96%
  61701 requests in 5.10s, 1.11GB read
  Socket errors: connect 0, read 0, write 0, timeout 16
Requests/sec:  12089.55
Transfer/sec:    222.56MB
[info] CPU 3792.0% | Mem 992MiB

[run 3/3]
Running 5s test @ http://localhost:8080
  64 threads and 6800 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency   427.19ms  279.04ms   1.99s    70.14%
    Req/Sec   199.42     82.78     1.39k    78.08%
  64106 requests in 5.11s, 1.15GB read
  Socket errors: connect 0, read 0, write 0, timeout 170
Requests/sec:  12544.43
Transfer/sec:    231.04MB
[info] CPU 4303.4% | Mem 1.0GiB

=== Best: 13874 req/s (CPU: 5074.9%, Mem: 1.5GiB) ===
[info] saved results/static/6800/slimeweb.json
httparena-bench-slimeweb
httparena-bench-slimeweb

==============================================
=== slimeweb / async-db / 1024c (tool=gcannon) ===
==============================================
[info] waiting for server...
[info] server ready

[run 1/3]
gcannon v0.5.2
  Target:    localhost:8080/
  Threads:   64
  Conns:     1024 (16/thread)
  Pipeline:  1
  Req/conn:  25
  Templates: 5
  Expected:  200
  Duration:  10s


  Thread Stats   Avg      p50      p90      p99    p99.9
    Latency   179.85ms   124.90ms   143.60ms    2.05s    5.00s

  39520 requests in 10.00s, 38992 responses
  Throughput: 3.90K req/s
  Bandwidth:  14.91MB/s
  Status codes: 2xx=38992, 3xx=0, 4xx=0, 5xx=0
  Latency samples: 38992 / 38992 responses (100.0%)
  Latency overflow (>5s): 145
  Reconnects: 1186
  Per-template: 7956,7899,7615,7610,7912
  Per-template-ok: 7956,7899,7615,7610,7912
[info] CPU 178.4% | Mem 305MiB

[run 2/3]
gcannon v0.5.2
  Target:    localhost:8080/
  Threads:   64
  Conns:     1024 (16/thread)
  Pipeline:  1
  Req/conn:  25
  Templates: 5
  Expected:  200
  Duration:  10s


  Thread Stats   Avg      p50      p90      p99    p99.9
    Latency   172.03ms   119.20ms   128.10ms    1.67s    5.00s

  42005 requests in 10.00s, 41584 responses
  Throughput: 4.16K req/s
  Bandwidth:  15.92MB/s
  Status codes: 2xx=41584, 3xx=0, 4xx=0, 5xx=0
  Latency samples: 41584 / 41584 responses (100.0%)
  Latency overflow (>5s): 170
  Reconnects: 1301
  Per-template: 8283,8416,8209,8464,8212
  Per-template-ok: 8283,8416,8209,8464,8212
[info] CPU 194.1% | Mem 368MiB

[run 3/3]
gcannon v0.5.2
  Target:    localhost:8080/
  Threads:   64
  Conns:     1024 (16/thread)
  Pipeline:  1
  Req/conn:  25
  Templates: 5
  Expected:  200
  Duration:  10s


  Thread Stats   Avg      p50      p90      p99    p99.9
    Latency   178.34ms   123.20ms   131.00ms    2.13s    5.00s

  40673 requests in 10.00s, 40289 responses
  Throughput: 4.03K req/s
  Bandwidth:  15.39MB/s
  Status codes: 2xx=40289, 3xx=0, 4xx=0, 5xx=0
  Latency samples: 40289 / 40289 responses (100.0%)
  Latency overflow (>5s): 130
  Reconnects: 1226
  Per-template: 7937,8173,8186,8087,7906
  Per-template-ok: 7937,8173,8186,8087,7906
[info] CPU 191.9% | Mem 447MiB

=== Best: 4158 req/s (CPU: 194.1%, Mem: 368MiB) ===
[info] input BW: 284.24KB/s (avg template: 70 bytes)
[info] saved results/async-db/1024/slimeweb.json
httparena-bench-slimeweb
httparena-bench-slimeweb
[info] skip: slimeweb does not subscribe to crud
[info] skip: slimeweb does not subscribe to baseline-h2
[info] skip: slimeweb does not subscribe to static-h2
[info] skip: slimeweb does not subscribe to baseline-h3
[info] skip: slimeweb does not subscribe to static-h3
[info] skip: slimeweb does not subscribe to gateway-64
[info] skip: slimeweb does not subscribe to gateway-h3
[info] skip: slimeweb does not subscribe to production-stack
[info] skip: slimeweb does not subscribe to unary-grpc
[info] skip: slimeweb does not subscribe to unary-grpc-tls
[info] skip: slimeweb does not subscribe to stream-grpc
[info] skip: slimeweb does not subscribe to stream-grpc-tls

==============================================
=== slimeweb / echo-ws / 512c (tool=gcannon) ===
==============================================
[info] waiting for server...
[warn] slimeweb did not come up for echo-ws; skipping
httparena-bench-slimeweb
httparena-bench-slimeweb

==============================================
=== slimeweb / echo-ws / 4096c (tool=gcannon) ===
==============================================
[info] waiting for server...
[warn] slimeweb did not come up for echo-ws; skipping
httparena-bench-slimeweb
httparena-bench-slimeweb

==============================================
=== slimeweb / echo-ws / 16384c (tool=gcannon) ===
==============================================
[info] waiting for server...
[warn] slimeweb did not come up for echo-ws; skipping
httparena-bench-slimeweb
httparena-bench-slimeweb
[info] rebuilding site/data/*.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/frameworks.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/api-16-1024.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/api-4-256.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/async-db-1024.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/baseline-4096.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/baseline-512.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/json-4096.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/json-comp-16384.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/json-comp-4096.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/json-comp-512.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/limited-conn-4096.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/limited-conn-512.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/pipelined-4096.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/pipelined-512.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/static-1024.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/static-4096.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/static-6800.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/upload-256.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/upload-32.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/current.json
[info] done
httparena-postgres
[info] restoring loopback MTU to 65536
[info] restoring CPU governor → performance

@ATOMMAX-2001
Copy link
Copy Markdown
Contributor Author

Hmm 🤔 , I was expecting slightly higher numbers compared to my micro-benchmark. I guess it’s becoming unstable under high load.

Anyway, Thanks for providing this platform for testing and support, appreciate it ✌️ .

@ATOMMAX-2001
Copy link
Copy Markdown
Contributor Author

what happened to websockets, did the server died?

@MDA2AV
Copy link
Copy Markdown
Owner

MDA2AV commented Apr 20, 2026

what happened to websockets, did the server died?

slimeweb / echo-ws / 4096c (tool=gcannon)

[info] waiting for server...
[warn] slimeweb did not come up for echo-ws; skipping
httparena-bench-slimeweb
httparena-bench-slimeweb

@MDA2AV
Copy link
Copy Markdown
Owner

MDA2AV commented Apr 20, 2026

Hmm 🤔 , I was expecting slightly higher numbers compared to my micro-benchmark. I guess it’s becoming unstable under high load.

It is not fully using the CPU, only 12 out of the 64 CPUs in many tests, probably some config or bad scaling

@ATOMMAX-2001
Copy link
Copy Markdown
Contributor Author

what happened to websockets, did the server died?

slimeweb / echo-ws / 4096c (tool=gcannon)

[info] waiting for server... [warn] slimeweb did not come up for echo-ws; skipping httparena-bench-slimeweb httparena-bench-slimeweb

So my server died to test websocket? can we test websocket alone coz it got passed in validation phase right?



Hmm 🤔 , I was expecting slightly higher numbers compared to my micro-benchmark. I guess it’s becoming unstable under high load.

It is not fully using the CPU, only 12 out of the 64 CPUs in many tests, probably some config or bad scaling

oh wait a min, wait a min really 12 cores only??
that shouldn't be possible actually the rust server worker are scaled by the no of cpu. let me see.

can we able to see the logs?, ive logged no of workers its using in the console.
image

is it possible to fetch it?

@MDA2AV
Copy link
Copy Markdown
Owner

MDA2AV commented Apr 20, 2026

Yea, Ill trigger a run with logs

@MDA2AV
Copy link
Copy Markdown
Owner

MDA2AV commented Apr 20, 2026

/benchmark -f slimeweb --save

@github-actions
Copy link
Copy Markdown
Contributor

👋 /benchmark request received. A collaborator will review and approve the run.

@github-actions
Copy link
Copy Markdown
Contributor

🚀 Benchmark run triggered for slimeweb (all tests) with --save. Results will be posted here when done.

@ATOMMAX-2001
Copy link
Copy Markdown
Contributor Author

Yea, Ill trigger a run with logs

Ty. That would help

@github-actions
Copy link
Copy Markdown
Contributor

Benchmark Results

Framework: slimeweb | Test: all tests

Test Conn RPS CPU Mem Δ RPS Δ Mem
baseline 512 69,917 1257.0% 184MiB NEW NEW
baseline 4096 71,705 1322.5% 150MiB NEW NEW
pipelined 512 70,690 1238.3% 135MiB NEW NEW
pipelined 4096 72,670 1263.9% 178MiB NEW NEW
limited-conn 512 72,654 1311.5% 131MiB NEW NEW
limited-conn 4096 69,467 1319.7% 151MiB NEW NEW
json 4096 50,429 1985.7% 215MiB NEW NEW
json-comp 512 47,419 2026.0% 182MiB NEW NEW
json-comp 4096 46,406 2067.8% 226MiB NEW NEW
json-comp 16384 47,876 2144.0% 313MiB NEW NEW
upload 32 1,086 2937.9% 1.2GiB NEW NEW
upload 256 1,171 5094.6% 4.1GiB NEW NEW
api-4 256 12,908 262.0% 105MiB NEW NEW
api-16 1024 12,236 403.8% 154MiB NEW NEW
static 1024 12,455 4140.0% 886MiB NEW NEW
static 4096 12,107 3775.6% 1.9GiB NEW NEW
static 6800 13,186 4565.7% 2.1GiB NEW NEW
async-db 1024 4,147 192.4% 307MiB NEW NEW
Full log
[info] saved results/static/4096/slimeweb.json
httparena-bench-slimeweb
httparena-bench-slimeweb

==============================================
=== slimeweb / static / 6800c (tool=wrk) ===
==============================================
[info] waiting for server...
[info] server ready

[run 1/3]
Running 5s test @ http://localhost:8080
  64 threads and 6800 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency   254.01ms  225.98ms   1.94s    79.50%
    Req/Sec   222.91    144.37     2.66k    70.77%
  61908 requests in 5.10s, 1.11GB read
  Socket errors: connect 0, read 0, write 0, timeout 288
Requests/sec:  12126.97
Transfer/sec:    223.54MB
[info] CPU 3854.3% | Mem 1.8GiB

[run 2/3]
Running 5s test @ http://localhost:8080
  64 threads and 6800 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency   319.38ms  150.82ms   1.64s    72.97%
    Req/Sec   211.87    103.74     1.99k    72.43%
  67277 requests in 5.10s, 1.21GB read
Requests/sec:  13186.10
Transfer/sec:    243.14MB
[info] CPU 4565.7% | Mem 2.1GiB

[run 3/3]
Running 5s test @ http://localhost:8080
  64 threads and 6800 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency   315.27ms  206.32ms   1.98s    73.86%
    Req/Sec   199.00     94.93     1.78k    72.95%
  63882 requests in 5.10s, 1.15GB read
  Socket errors: connect 0, read 0, write 0, timeout 3
Requests/sec:  12520.60
Transfer/sec:    230.44MB
[info] CPU 4193.8% | Mem 1.2GiB

=== Best: 13186 req/s (CPU: 4565.7%, Mem: 2.1GiB) ===
[info] saved results/static/6800/slimeweb.json
httparena-bench-slimeweb
httparena-bench-slimeweb

==============================================
=== slimeweb / async-db / 1024c (tool=gcannon) ===
==============================================
[info] waiting for server...
[info] server ready

[run 1/3]
gcannon v0.5.2
  Target:    localhost:8080/
  Threads:   64
  Conns:     1024 (16/thread)
  Pipeline:  1
  Req/conn:  25
  Templates: 5
  Expected:  200
  Duration:  10s


  Thread Stats   Avg      p50      p90      p99    p99.9
    Latency   170.83ms   120.50ms   131.60ms    1.98s    5.00s

  42076 requests in 10.00s, 41477 responses
  Throughput: 4.15K req/s
  Bandwidth:  15.86MB/s
  Status codes: 2xx=41477, 3xx=0, 4xx=0, 5xx=0
  Latency samples: 41477 / 41477 responses (100.0%)
  Latency overflow (>5s): 158
  Reconnects: 1233
  Per-template: 8425,8223,8231,8420,8178
  Per-template-ok: 8425,8223,8231,8420,8178
[info] CPU 192.4% | Mem 307MiB

[run 2/3]
gcannon v0.5.2
  Target:    localhost:8080/
  Threads:   64
  Conns:     1024 (16/thread)
  Pipeline:  1
  Req/conn:  25
  Templates: 5
  Expected:  200
  Duration:  10s


  Thread Stats   Avg      p50      p90      p99    p99.9
    Latency   186.44ms   123.60ms   134.60ms    2.49s    5.00s

  40639 requests in 10.00s, 40272 responses
  Throughput: 4.03K req/s
  Bandwidth:  15.46MB/s
  Status codes: 2xx=40272, 3xx=0, 4xx=0, 5xx=0
  Latency samples: 40272 / 40272 responses (100.0%)
  Latency overflow (>5s): 188
  Reconnects: 1242
  Per-template: 7875,8062,8161,8279,7895
  Per-template-ok: 7875,8062,8161,8279,7895
[info] CPU 188.3% | Mem 432MiB

[run 3/3]
gcannon v0.5.2
  Target:    localhost:8080/
  Threads:   64
  Conns:     1024 (16/thread)
  Pipeline:  1
  Req/conn:  25
  Templates: 5
  Expected:  200
  Duration:  10s


  Thread Stats   Avg      p50      p90      p99    p99.9
    Latency   178.68ms   124.70ms   133.20ms    1.98s    5.00s

  40464 requests in 10.00s, 40024 responses
  Throughput: 4.00K req/s
  Bandwidth:  15.56MB/s
  Status codes: 2xx=40024, 3xx=0, 4xx=0, 5xx=0
  Latency samples: 40024 / 40024 responses (100.0%)
  Latency overflow (>5s): 142
  Reconnects: 1244
  Per-template: 7936,7749,7865,8239,8235
  Per-template-ok: 7936,7749,7865,8239,8235
[info] CPU 190.2% | Mem 526MiB

=== Best: 4147 req/s (CPU: 192.4%, Mem: 307MiB) ===
[info] input BW: 283.49KB/s (avg template: 70 bytes)
[info] saved results/async-db/1024/slimeweb.json
httparena-bench-slimeweb
httparena-bench-slimeweb
[info] skip: slimeweb does not subscribe to crud
[info] skip: slimeweb does not subscribe to baseline-h2
[info] skip: slimeweb does not subscribe to static-h2
[info] skip: slimeweb does not subscribe to baseline-h3
[info] skip: slimeweb does not subscribe to static-h3
[info] skip: slimeweb does not subscribe to gateway-64
[info] skip: slimeweb does not subscribe to gateway-h3
[info] skip: slimeweb does not subscribe to production-stack
[info] skip: slimeweb does not subscribe to unary-grpc
[info] skip: slimeweb does not subscribe to unary-grpc-tls
[info] skip: slimeweb does not subscribe to stream-grpc
[info] skip: slimeweb does not subscribe to stream-grpc-tls

==============================================
=== slimeweb / echo-ws / 512c (tool=gcannon) ===
==============================================
[info] waiting for server...
[warn] slimeweb did not come up for echo-ws; skipping
httparena-bench-slimeweb
httparena-bench-slimeweb

==============================================
=== slimeweb / echo-ws / 4096c (tool=gcannon) ===
==============================================
[info] waiting for server...
[warn] slimeweb did not come up for echo-ws; skipping
httparena-bench-slimeweb
httparena-bench-slimeweb

==============================================
=== slimeweb / echo-ws / 16384c (tool=gcannon) ===
==============================================
[info] waiting for server...
[warn] slimeweb did not come up for echo-ws; skipping
httparena-bench-slimeweb
httparena-bench-slimeweb
[info] rebuilding site/data/*.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/frameworks.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/api-16-1024.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/api-4-256.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/async-db-1024.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/baseline-4096.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/baseline-512.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/json-4096.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/json-comp-16384.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/json-comp-4096.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/json-comp-512.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/limited-conn-4096.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/limited-conn-512.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/pipelined-4096.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/pipelined-512.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/static-1024.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/static-4096.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/static-6800.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/upload-256.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/upload-32.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/current.json
[info] done
httparena-postgres
[info] restoring loopback MTU to 65536
[info] restoring CPU governor → performance

@MDA2AV
Copy link
Copy Markdown
Owner

MDA2AV commented Apr 20, 2026

see logs here

Nº of workers seems correct but framework may have issues with high CPU count scaling, seen many like this here that eventually improved and achieved much better results

@MDA2AV
Copy link
Copy Markdown
Owner

MDA2AV commented Apr 20, 2026

Anyway, don't worry too much about results now, there is room to grow

@MDA2AV MDA2AV merged commit 979ea8e into MDA2AV:main Apr 20, 2026
@ATOMMAX-2001
Copy link
Copy Markdown
Contributor Author

see logs here

Nº of workers seems correct but framework may have issues with high CPU count scaling, seen many like this here that eventually improved and achieved much better results

Yea need to check what's happening in high load and websocket. Ty

@ATOMMAX-2001
Copy link
Copy Markdown
Contributor Author

Sry one last question, how do you guys check if the server is up or not for websocket scenario coz all 3 websocket test case the server is not available it showing in the benchmark log.

It would be helpful for debugging.

Thanks.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants