Skip to content

Update dependencies in ring-http-exchange#770

Draft
ruroru wants to merge 1 commit into
MDA2AV:mainfrom
ruroru:main
Draft

Update dependencies in ring-http-exchange#770
ruroru wants to merge 1 commit into
MDA2AV:mainfrom
ruroru:main

Conversation

@ruroru
Copy link
Copy Markdown
Contributor

@ruroru ruroru commented May 31, 2026

No description provided.

@ruroru
Copy link
Copy Markdown
Contributor Author

ruroru commented May 31, 2026

/benchmark -f ring-http-exchange

@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 Results

Framework: ring-http-exchange | Test: all tests

Test Conn RPS CPU Mem Δ RPS Δ Mem
baseline 512 1,106,101 6136.8% 13.6GiB -16.1% +7.9%
baseline 4096 1,104,695 6214.6% 13.0GiB -10.8% ~0%
limited-conn 512 759,677 6005.2% 12.7GiB -13.4% -5.2%
limited-conn 4096 801,352 5934.8% 12.8GiB -10.5% ~0%
json 4096 427,118 5954.4% 13.3GiB -8.6% -5.0%
json-comp 512 18,824 676.3% 853MiB +0.2% +6.4%
json-comp 4096 139,617 4671.1% 8.2GiB -1.2% +26.2%
json-comp 16384 217,927 6252.4% 15.9GiB -1.4% +6.0%
json-tls 4096 420,566 6398.0% 13.8GiB -8.7% -3.5%
upload 32 2,787 2388.4% 440MiB +2.7% +25.7%
upload 256 2,850 4543.1% 371MiB -1.7% -5.4%
api-4 256 46,237 401.0% 827MiB +46.8% +14.9%
api-16 1024 122,782 1582.4% 1.7GiB +59.6% +13.3%
static 1024 226,894 6618.3% 4.8GiB -3.7% ~0%
static 4096 222,575 6595.4% 4.9GiB -1.2% ~0%
static 6800 221,198 6509.1% 5.0GiB -1.9% +2.0%
async-db 1024 197,886 4390.8% 4.8GiB +154.1% +2.1%
crud 4096 0 4745.5% 7.2GiB -100.0% -43.8%
fortunes 1024 62,244 5736.4% 14.1GiB -6.2% ~0%
Full log
gcannon v0.5.3
  Target:    localhost:8080/
  Threads:   64
  Conns:     4096 (64/thread)
  Pipeline:  1
  Req/conn:  200
  Templates: 20
  Expected:  200
  Duration:  15s


  Thread Stats   Avg      p50      p90      p99    p99.9
    Latency   21.59ms   19.50ms   23.10ms   48.30ms   632.20ms

  2848643 requests in 15.00s, 2848643 responses
  Throughput: 189.88K req/s
  Bandwidth:  25.53MB/s
  Status codes: 2xx=0, 3xx=0, 4xx=0, 5xx=2848643
  Latency samples: 2848643 / 2848643 responses (100.0%)
  Reconnects: 12288
  Per-template: 141953,142158,142370,142499,142664,142595,142611,142666,142634,142597,142596,142614,142613,142613,142591,142605,142413,142152,141920,141779
  Per-template-ok: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0

  WARNING: 2848643/2848643 responses (100.0%) had unexpected status (expected 2xx)
[info] CPU 4745.5% | Mem 7.2GiB

[run 2/3]
gcannon v0.5.3
  Target:    localhost:8080/
  Threads:   64
  Conns:     4096 (64/thread)
  Pipeline:  1
  Req/conn:  200
  Templates: 20
  Expected:  200
  Duration:  15s


  Thread Stats   Avg      p50      p90      p99    p99.9
    Latency   21.30ms   20.80ms   22.90ms   30.70ms   34.20ms

  2886756 requests in 15.00s, 2886756 responses
  Throughput: 192.42K req/s
  Bandwidth:  25.87MB/s
  Status codes: 2xx=0, 3xx=0, 4xx=0, 5xx=2886756
  Latency samples: 2886756 / 2886756 responses (100.0%)
  Reconnects: 12288
  Per-template: 143846,144041,144256,144494,144548,144526,144487,144551,144548,144522,144501,144534,144499,144505,144483,144578,144302,144023,143808,143704
  Per-template-ok: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0

  WARNING: 2886756/2886756 responses (100.0%) had unexpected status (expected 2xx)
[info] CPU 4308.4% | Mem 6.9GiB

[run 3/3]
gcannon v0.5.3
  Target:    localhost:8080/
  Threads:   64
  Conns:     4096 (64/thread)
  Pipeline:  1
  Req/conn:  200
  Templates: 20
  Expected:  200
  Duration:  15s


  Thread Stats   Avg      p50      p90      p99    p99.9
    Latency   21.12ms   20.60ms   22.70ms   29.90ms   34.70ms

  2909402 requests in 15.00s, 2909274 responses
  Throughput: 193.92K req/s
  Bandwidth:  26.08MB/s
  Status codes: 2xx=0, 3xx=0, 4xx=0, 5xx=2909274
  Latency samples: 2909270 / 2909274 responses (100.0%)
  Reconnects: 12290
  Per-template: 144904,145067,145308,145607,145637,145625,145617,145714,145713,145710,145684,145694,145631,145621,145605,145705,145440,145198,144939,144851
  Per-template-ok: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0

  WARNING: 2909274/2909274 responses (100.0%) had unexpected status (expected 2xx)
[info] CPU 4307.3% | Mem 6.5GiB

=== Best: 0 req/s (CPU: 4745.5%, Mem: 7.2GiB) ===
[info] saved results/crud/4096/ring-http-exchange.json
httparena-bench-ring-http-exchange
httparena-bench-ring-http-exchange

==============================================
=== ring-http-exchange / fortunes / 1024c (tool=gcannon) ===
==============================================
[info] waiting for server...
[info] server ready

[run 1/3]
gcannon v0.5.3
  Target:    localhost:8080/fortunes
  Threads:   64
  Conns:     1024 (16/thread)
  Pipeline:  1
  Req/conn:  unlimited (keep-alive)
  Expected:  200
  Duration:  5s


  Thread Stats   Avg      p50      p90      p99    p99.9
    Latency   23.69ms   16.60ms   28.70ms   92.40ms   869.90ms

  217278 requests in 5.00s, 217278 responses
  Throughput: 43.44K req/s
  Bandwidth:  1.05GB/s
  Status codes: 2xx=217278, 3xx=0, 4xx=0, 5xx=0
  Latency samples: 217278 / 217278 responses (100.0%)
[info] CPU 5695.5% | Mem 14.2GiB

[run 2/3]
gcannon v0.5.3
  Target:    localhost:8080/fortunes
  Threads:   64
  Conns:     1024 (16/thread)
  Pipeline:  1
  Req/conn:  unlimited (keep-alive)
  Expected:  200
  Duration:  5s


  Thread Stats   Avg      p50      p90      p99    p99.9
    Latency   16.39ms   15.80ms   20.00ms   26.50ms   33.30ms

  311222 requests in 5.00s, 311222 responses
  Throughput: 62.22K req/s
  Bandwidth:  1.50GB/s
  Status codes: 2xx=311222, 3xx=0, 4xx=0, 5xx=0
  Latency samples: 311222 / 311222 responses (100.0%)
[info] CPU 5736.4% | Mem 14.1GiB

[run 3/3]
gcannon v0.5.3
  Target:    localhost:8080/fortunes
  Threads:   64
  Conns:     1024 (16/thread)
  Pipeline:  1
  Req/conn:  unlimited (keep-alive)
  Expected:  200
  Duration:  5s


  Thread Stats   Avg      p50      p90      p99    p99.9
    Latency   16.59ms   15.90ms   20.30ms   26.90ms   34.60ms

  306956 requests in 5.00s, 306956 responses
  Throughput: 61.37K req/s
  Bandwidth:  1.48GB/s
  Status codes: 2xx=306956, 3xx=0, 4xx=0, 5xx=0
  Latency samples: 306954 / 306956 responses (100.0%)
[info] CPU 5604.7% | Mem 13.0GiB

=== Best: 62244 req/s (CPU: 5736.4%, Mem: 14.1GiB) ===
[info] saved results/fortunes/1024/ring-http-exchange.json
httparena-bench-ring-http-exchange
httparena-bench-ring-http-exchange
[info] skip: ring-http-exchange does not subscribe to baseline-h2
[info] skip: ring-http-exchange does not subscribe to static-h2
[info] skip: ring-http-exchange does not subscribe to baseline-h2c
[info] skip: ring-http-exchange does not subscribe to json-h2c
[info] skip: ring-http-exchange does not subscribe to baseline-h3
[info] skip: ring-http-exchange does not subscribe to static-h3
[info] skip: ring-http-exchange does not subscribe to gateway-64
[info] skip: ring-http-exchange does not subscribe to gateway-h3
[info] skip: ring-http-exchange does not subscribe to production-stack
[info] skip: ring-http-exchange does not subscribe to unary-grpc
[info] skip: ring-http-exchange does not subscribe to unary-grpc-tls
[info] skip: ring-http-exchange does not subscribe to stream-grpc
[info] skip: ring-http-exchange does not subscribe to stream-grpc-tls
[info] skip: ring-http-exchange does not subscribe to echo-ws
[info] skip: ring-http-exchange does not subscribe to echo-ws-pipeline
[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/crud-4096.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/fortunes-1024.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/json-tls-4096.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/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
httparena-redis
[info] restoring loopback MTU to 65536
[info] restoring CPU governor → powersave

@ruroru
Copy link
Copy Markdown
Contributor Author

ruroru commented Jun 1, 2026

/benchmark -f ring-http-exchange

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Jun 1, 2026

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

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Jun 1, 2026

Benchmark Results

Framework: ring-http-exchange | Test: all tests

Test Conn RPS CPU Mem Δ RPS Δ Mem
baseline 512 1,107,788 6215.1% 13.5GiB -16.0% +7.1%
baseline 4096 1,084,331 6383.3% 13.7GiB -12.4% +5.4%
limited-conn 512 772,398 5983.1% 13.4GiB -12.0% ~0%
limited-conn 4096 783,372 5848.3% 12.8GiB -12.5% ~0%
json 4096 428,453 6007.7% 13.2GiB -8.3% -5.7%
json-comp 512 18,797 684.6% 805MiB ~0% +0.4%
json-comp 4096 138,786 4680.1% 6.2GiB -1.8% -4.6%
json-comp 16384 217,264 6616.9% 15.5GiB -1.7% +3.3%
json-tls 4096 420,905 6399.5% 13.9GiB -8.6% -2.8%
upload 32 2,760 2500.4% 371MiB +1.7% +6.0%
upload 256 2,904 4781.2% 360MiB +0.1% -8.2%
api-4 256 29,254 400.8% 794MiB -7.1% +10.3%
api-16 1024 73,750 1586.8% 3.4GiB -4.2% +126.7%
static 1024 228,169 6552.7% 2.2GiB -3.2% -54.2%
static 4096 220,634 6506.0% 4.9GiB -2.1% ~0%
static 6800 220,528 6479.3% 4.9GiB -2.2% ~0%
async-db 1024 102,977 5029.8% 5.9GiB +32.3% +25.5%
crud 4096 191,587 5216.8% 13.5GiB -40.8% +5.5%
fortunes 1024 62,448 5703.1% 13.0GiB -5.9% -7.8%
Full log
==============================================
[info] waiting for server...
[info] server ready

[run 1/3]
gcannon v0.5.3
  Target:    localhost:8080/
  Threads:   64
  Conns:     4096 (64/thread)
  Pipeline:  1
  Req/conn:  200
  Templates: 20
  Expected:  200
  Duration:  15s


  Thread Stats   Avg      p50      p90      p99    p99.9
    Latency   24.92ms   28.70ms   33.50ms   81.40ms   718.90ms

  2462343 requests in 15.00s, 2458439 responses
  Throughput: 163.87K req/s
  Bandwidth:  58.28MB/s
  Status codes: 2xx=2458439, 3xx=0, 4xx=0, 5xx=0
  Latency samples: 2458439 / 2458439 responses (100.0%)
  Reconnects: 10841
  Per-template: 90166,94853,116729,122999,135816,135809,135401,135656,136057,135428,135557,135431,136207,135274,135756,135173,124705,101667,89625,90130
  Per-template-ok: 90166,94853,116729,122999,135816,135809,135401,135656,136057,135428,135557,135431,136207,135274,135756,135173,124705,101667,89625,90130
[info] CPU 5048.6% | Mem 14.2GiB

[run 2/3]
gcannon v0.5.3
  Target:    localhost:8080/
  Threads:   64
  Conns:     4096 (64/thread)
  Pipeline:  1
  Req/conn:  200
  Templates: 20
  Expected:  200
  Duration:  15s


  Thread Stats   Avg      p50      p90      p99    p99.9
    Latency   21.34ms   27.80ms   30.50ms   40.70ms   246.90ms

  2873815 requests in 15.00s, 2873816 responses
  Throughput: 191.55K req/s
  Bandwidth:  68.07MB/s
  Status codes: 2xx=2873816, 3xx=0, 4xx=0, 5xx=0
  Latency samples: 2873816 / 2873816 responses (100.0%)
  Reconnects: 11651
  Per-template: 103574,115427,122564,137913,159503,159639,159057,159290,159067,159541,159914,159972,159377,159493,160044,159677,146043,126815,103241,103665
  Per-template-ok: 103574,115427,122564,137913,159503,159639,159057,159290,159067,159541,159914,159972,159377,159493,160044,159677,146043,126815,103241,103665
[info] CPU 5216.8% | Mem 13.5GiB

[run 3/3]
gcannon v0.5.3
  Target:    localhost:8080/
  Threads:   64
  Conns:     4096 (64/thread)
  Pipeline:  1
  Req/conn:  200
  Templates: 20
  Expected:  200
  Duration:  15s


  Thread Stats   Avg      p50      p90      p99    p99.9
    Latency   21.57ms   28.20ms   31.00ms   40.20ms   126.10ms

  2842546 requests in 15.00s, 2842418 responses
  Throughput: 189.46K req/s
  Bandwidth:  67.37MB/s
  Status codes: 2xx=2842418, 3xx=0, 4xx=0, 5xx=0
  Latency samples: 2842418 / 2842418 responses (100.0%)
  Reconnects: 11415
  Per-template: 103249,113939,123000,135744,157913,157687,157761,157470,157844,157742,157190,157758,157501,157314,157416,157792,144924,124982,102112,103080
  Per-template-ok: 103249,113939,123000,135744,157913,157687,157761,157470,157844,157742,157190,157758,157501,157314,157416,157792,144924,124982,102112,103080
[info] CPU 5065.8% | Mem 12.4GiB

=== Best: 191587 req/s (CPU: 5216.8%, Mem: 13.5GiB) ===
[info] input BW: 16.44MB/s (avg template: 90 bytes)
[info] saved results/crud/4096/ring-http-exchange.json
httparena-bench-ring-http-exchange
httparena-bench-ring-http-exchange

==============================================
=== ring-http-exchange / fortunes / 1024c (tool=gcannon) ===
==============================================
[info] waiting for server...
[info] server ready

[run 1/3]
gcannon v0.5.3
  Target:    localhost:8080/fortunes
  Threads:   64
  Conns:     1024 (16/thread)
  Pipeline:  1
  Req/conn:  unlimited (keep-alive)
  Expected:  200
  Duration:  5s


  Thread Stats   Avg      p50      p90      p99    p99.9
    Latency   24.20ms   16.70ms   28.70ms   181.60ms   842.10ms

  213103 requests in 5.00s, 213103 responses
  Throughput: 42.60K req/s
  Bandwidth:  1.03GB/s
  Status codes: 2xx=213103, 3xx=0, 4xx=0, 5xx=0
  Latency samples: 213103 / 213103 responses (100.0%)
[info] CPU 5652.8% | Mem 14.2GiB

[run 2/3]
gcannon v0.5.3
  Target:    localhost:8080/fortunes
  Threads:   64
  Conns:     1024 (16/thread)
  Pipeline:  1
  Req/conn:  unlimited (keep-alive)
  Expected:  200
  Duration:  5s


  Thread Stats   Avg      p50      p90      p99    p99.9
    Latency   16.48ms   15.80ms   20.20ms   27.00ms   34.70ms

  309415 requests in 5.00s, 309415 responses
  Throughput: 61.86K req/s
  Bandwidth:  1.49GB/s
  Status codes: 2xx=309415, 3xx=0, 4xx=0, 5xx=0
  Latency samples: 309412 / 309415 responses (100.0%)
[info] CPU 5785.7% | Mem 14.1GiB

[run 3/3]
gcannon v0.5.3
  Target:    localhost:8080/fortunes
  Threads:   64
  Conns:     1024 (16/thread)
  Pipeline:  1
  Req/conn:  unlimited (keep-alive)
  Expected:  200
  Duration:  5s


  Thread Stats   Avg      p50      p90      p99    p99.9
    Latency   16.31ms   15.60ms   20.00ms   26.80ms   34.00ms

  312244 requests in 5.00s, 312244 responses
  Throughput: 62.42K req/s
  Bandwidth:  1.51GB/s
  Status codes: 2xx=312244, 3xx=0, 4xx=0, 5xx=0
  Latency samples: 312244 / 312244 responses (100.0%)
[info] CPU 5703.1% | Mem 13.0GiB

=== Best: 62448 req/s (CPU: 5703.1%, Mem: 13.0GiB) ===
[info] saved results/fortunes/1024/ring-http-exchange.json
httparena-bench-ring-http-exchange
httparena-bench-ring-http-exchange
[info] skip: ring-http-exchange does not subscribe to baseline-h2
[info] skip: ring-http-exchange does not subscribe to static-h2
[info] skip: ring-http-exchange does not subscribe to baseline-h2c
[info] skip: ring-http-exchange does not subscribe to json-h2c
[info] skip: ring-http-exchange does not subscribe to baseline-h3
[info] skip: ring-http-exchange does not subscribe to static-h3
[info] skip: ring-http-exchange does not subscribe to gateway-64
[info] skip: ring-http-exchange does not subscribe to gateway-h3
[info] skip: ring-http-exchange does not subscribe to production-stack
[info] skip: ring-http-exchange does not subscribe to unary-grpc
[info] skip: ring-http-exchange does not subscribe to unary-grpc-tls
[info] skip: ring-http-exchange does not subscribe to stream-grpc
[info] skip: ring-http-exchange does not subscribe to stream-grpc-tls
[info] skip: ring-http-exchange does not subscribe to echo-ws
[info] skip: ring-http-exchange does not subscribe to echo-ws-pipeline
[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/crud-4096.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/fortunes-1024.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/json-tls-4096.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/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
httparena-redis
[info] restoring loopback MTU to 65536
[info] restoring CPU governor → powersave

@ruroru ruroru closed this Jun 1, 2026
@ruroru ruroru reopened this Jun 1, 2026
@ruroru ruroru marked this pull request as draft June 1, 2026 10:46
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.

1 participant