Skip to content

[sinatra] Add json-tls test#612

Merged
MDA2AV merged 3 commits intoMDA2AV:mainfrom
p8:sinatra/json-tls
Apr 25, 2026
Merged

[sinatra] Add json-tls test#612
MDA2AV merged 3 commits intoMDA2AV:mainfrom
p8:sinatra/json-tls

Conversation

@p8
Copy link
Copy Markdown
Contributor

@p8 p8 commented Apr 23, 2026

No description provided.

@MDA2AV
Copy link
Copy Markdown
Owner

MDA2AV commented Apr 25, 2026

/benchmark -f sinatra -t json-tls --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 sinatra (test: json-tls) with --save. Results will be posted here when done.

@github-actions
Copy link
Copy Markdown
Contributor

Benchmark Results

Framework: sinatra | Test: json-tls

Test Conn RPS CPU Mem Δ RPS Δ Mem
json-tls 4096 200,036 6530.1% 7.4GiB NEW NEW
Full log
[info] available CPUs: 128
[info] framework: sinatra (sinatra, Ruby)
[info] subscribed tests: baseline,pipelined,limited-conn,json,json-comp,json-tls,upload,api-4,api-16,async-db,static
[info] building image: httparena-sinatra
#0 building with "default" instance using docker driver

#1 [internal] load build definition from Dockerfile
#1 transferring dockerfile: 524B done
#1 DONE 0.0s

#2 [internal] load metadata for docker.io/library/ruby:4.0-slim
#2 DONE 0.9s

#3 [internal] load .dockerignore
#3 transferring context: 2B done
#3 DONE 0.0s

#4 [internal] load build context
#4 transferring context: 6.09kB done
#4 DONE 0.0s

#5 [1/6] FROM docker.io/library/ruby:4.0-slim@sha256:198547d3216e0efe6fb337997f22fa98eef4270b38033a697dad148d9d8b9b0d
#5 resolve docker.io/library/ruby:4.0-slim@sha256:198547d3216e0efe6fb337997f22fa98eef4270b38033a697dad148d9d8b9b0d 0.0s done
#5 DONE 0.1s

#6 [2/6] RUN apt-get update &&     apt-get install -y --no-install-recommends build-essential libsqlite3-dev libpq-dev libjemalloc2 &&     rm -rf /var/lib/apt/lists/*
#6 CACHED

#7 [3/6] WORKDIR /app
#7 CACHED

#8 [4/6] COPY Gemfile .
#8 CACHED

#9 [5/6] RUN bundle install --jobs=$(nproc)
#9 CACHED

#10 [6/6] COPY . .
#10 CACHED

#11 exporting to image
#11 exporting layers done
#11 exporting manifest sha256:c0aacbabd4bd570266503ee915256a06b2740b7bf7b3e6a8a1f2eb6ef955f78b 0.0s done
#11 exporting config sha256:d7efd4036e4bd0b95b6e86ffdaa5716e816142679f7d58002db1a04232878815 0.0s done
#11 exporting attestation manifest sha256:70cf235f4777be19542c693e5affab2950ea11ded36f4c67058d63d41b5fae16 0.1s done
#11 exporting manifest list sha256:66875bdd17de86f91e9b0d74a6733b80af0dc117422e55c87aae43da6fe0c0ee
#11 exporting manifest list sha256:66875bdd17de86f91e9b0d74a6733b80af0dc117422e55c87aae43da6fe0c0ee 0.0s done
#11 naming to docker.io/library/httparena-sinatra:latest done
#11 unpacking to docker.io/library/httparena-sinatra:latest
#11 unpacking to docker.io/library/httparena-sinatra:latest 3.3s done
#11 DONE 3.4s
[info] tuning host for benchmark runs
[info] CPU governor → performance
[info] setting kernel socket limits
[info] setting UDP buffer sizes for QUIC
[info] setting loopback MTU to 1500 (realistic Ethernet)
[info] restarting docker daemon
[info] dropping kernel caches
[info] starting postgres sidecar
[info] postgres ready (seeded)

==============================================
=== sinatra / json-tls / 4096c (tool=wrk) ===
==============================================
[info] waiting for server...
[info] server ready

[run 1/3]
Running 5s test @ https://localhost:8081
  64 threads and 4096 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency    22.83ms   13.89ms 297.26ms   90.48%
    Req/Sec     2.70k     0.89k    5.55k    81.84%
  857179 requests in 5.10s, 2.88GB read
Requests/sec: 168058.79
Transfer/sec:    578.34MB
[info] CPU 6361.0% | Mem 7.1GiB

[run 2/3]
Running 5s test @ https://localhost:8081
  64 threads and 4096 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency    21.42ms    7.84ms 166.36ms   84.96%
    Req/Sec     3.01k   381.94     9.13k    93.67%
  978104 requests in 5.10s, 3.29GB read
Requests/sec: 191768.14
Transfer/sec:    659.93MB
[info] CPU 6534.6% | Mem 7.3GiB

[run 3/3]
Running 5s test @ https://localhost:8081
  64 threads and 4096 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency    20.46ms    6.35ms 157.68ms   82.97%
    Req/Sec     3.13k   360.90     8.63k    93.95%
  1020147 requests in 5.10s, 3.43GB read
Requests/sec: 200036.43
Transfer/sec:    688.39MB
[info] CPU 6530.1% | Mem 7.4GiB

=== Best: 200036 req/s (CPU: 6530.1%, Mem: 7.4GiB) ===
[info] saved results/json-tls/4096/sinatra.json
httparena-bench-sinatra
httparena-bench-sinatra
[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/json-tls-4096.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 → powersave

@MDA2AV MDA2AV force-pushed the sinatra/json-tls branch from 470759f to 56083fa Compare April 25, 2026 12:08
@MDA2AV
Copy link
Copy Markdown
Owner

MDA2AV commented Apr 25, 2026

/benchmark -f sinatra -t json-tls --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 sinatra (test: json-tls) with --save. Results will be posted here when done.

@github-actions
Copy link
Copy Markdown
Contributor

Benchmark Results

Framework: sinatra | Test: json-tls

Test Conn RPS CPU Mem Δ RPS Δ Mem
json-tls 4096 198,495 6499.0% 7.5GiB NEW NEW
Full log
[info] available CPUs: 128
[info] framework: sinatra (sinatra, Ruby)
[info] subscribed tests: baseline,pipelined,limited-conn,json,json-comp,json-tls,upload,api-4,api-16,async-db,static
[info] building image: httparena-sinatra
#0 building with "default" instance using docker driver

#1 [internal] load build definition from Dockerfile
#1 transferring dockerfile: 524B done
#1 DONE 0.0s

#2 [internal] load metadata for docker.io/library/ruby:4.0-slim
#2 DONE 0.4s

#3 [internal] load .dockerignore
#3 transferring context: 2B done
#3 DONE 0.0s

#4 [internal] load build context
#4 transferring context: 170B done
#4 DONE 0.0s

#5 [1/6] FROM docker.io/library/ruby:4.0-slim@sha256:198547d3216e0efe6fb337997f22fa98eef4270b38033a697dad148d9d8b9b0d
#5 resolve docker.io/library/ruby:4.0-slim@sha256:198547d3216e0efe6fb337997f22fa98eef4270b38033a697dad148d9d8b9b0d 0.1s done
#5 DONE 0.1s

#6 [2/6] RUN apt-get update &&     apt-get install -y --no-install-recommends build-essential libsqlite3-dev libpq-dev libjemalloc2 &&     rm -rf /var/lib/apt/lists/*
#6 CACHED

#7 [3/6] WORKDIR /app
#7 CACHED

#8 [4/6] COPY Gemfile .
#8 CACHED

#9 [5/6] RUN bundle install --jobs=$(nproc)
#9 CACHED

#10 [6/6] COPY . .
#10 CACHED

#11 exporting to image
#11 exporting layers done
#11 exporting manifest sha256:f0bfec0d10c5204afc22c6ffa3ae39b68fc1002e259363d95676b9b60c9373a3 done
#11 exporting config sha256:821ed3c665b8beb97e5f94f83d3e3ffc2231fd2d0c75ddb700af74e9cb325d0c done
#11 exporting attestation manifest sha256:15ec90665790aa272bc5ec80d8ac854e6cf5288b6089c3d1ac56ce498cf18781 0.0s done
#11 exporting manifest list sha256:dd2a06d76b78057b17ac5cc3326aa8537de522e048e47db91c7650b48e0e8d32 0.0s done
#11 naming to docker.io/library/httparena-sinatra:latest
#11 naming to docker.io/library/httparena-sinatra:latest done
#11 unpacking to docker.io/library/httparena-sinatra:latest done
#11 DONE 0.1s
[info] tuning host for benchmark runs
[info] CPU governor → performance
[info] setting kernel socket limits
[info] setting UDP buffer sizes for QUIC
[info] setting loopback MTU to 1500 (realistic Ethernet)
[info] restarting docker daemon
[info] dropping kernel caches
[info] starting postgres sidecar
[info] postgres ready (seeded)

==============================================
=== sinatra / json-tls / 4096c (tool=wrk) ===
==============================================
[info] waiting for server...
[info] server ready

[run 1/3]
Running 5s test @ https://localhost:8081
  64 threads and 4096 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency    22.45ms   13.09ms 320.66ms   89.12%
    Req/Sec     2.72k     0.91k    5.80k    80.78%
  864141 requests in 5.10s, 2.90GB read
Requests/sec: 169369.54
Transfer/sec:    582.87MB
[info] CPU 6380.1% | Mem 7.1GiB

[run 2/3]
Running 5s test @ https://localhost:8081
  64 threads and 4096 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency    21.53ms    8.48ms 213.34ms   85.01%
    Req/Sec     3.00k   360.76     7.57k    93.83%
  977933 requests in 5.10s, 3.29GB read
Requests/sec: 191750.10
Transfer/sec:    659.88MB
[info] CPU 6578.1% | Mem 7.2GiB

[run 3/3]
Running 5s test @ https://localhost:8081
  64 threads and 4096 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency    20.63ms    6.54ms 131.08ms   82.48%
    Req/Sec     3.11k   382.15     8.69k    95.24%
  1012490 requests in 5.10s, 3.40GB read
Requests/sec: 198495.57
Transfer/sec:    683.13MB
[info] CPU 6499.0% | Mem 7.5GiB

=== Best: 198495 req/s (CPU: 6499.0%, Mem: 7.5GiB) ===
[info] saved results/json-tls/4096/sinatra.json
httparena-bench-sinatra
httparena-bench-sinatra
[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/json-tls-4096.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 → powersave

@MDA2AV MDA2AV merged commit e8fa2f0 into MDA2AV:main Apr 25, 2026
@p8 p8 deleted the sinatra/json-tls branch April 25, 2026 16:30
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