Skip to content

Morojs 1.8.16 - #1678

Merged
MDA2AV merged 12 commits into
MDA2AV:mainfrom
M-Chris:morojs-1.8.16
Oct 31, 2026
Merged

MDA2AV merged 12 commits into
MDA2AV:mainfrom
M-Chris:morojs-1.8.16

Conversation

@M-Chris

@M-Chris M-Chris commented Oct 29, 2026

Copy link
Copy Markdown
Contributor

Description


PR Commands — comment on this PR to trigger (requires collaborator approval):

Command Description
/benchmark -f <framework> Run every test the framework subscribes to
/benchmark -f <framework> -t <test> Run one test only
/benchmark -f <framework> --save Run and save results (updates the leaderboard on merge)
/benchmark -f <framework> -t <test> --save Run one test and save results
/benchmark -f <framework> --compare <other> Measure the deltas against another framework instead of this one
/benchmark-multiple -f <fw1>,<fw2>,... Benchmark several frameworks in one run — takes -t and --save too; saved results land in a single commit
/benchmark-multiple --save No -f needed: benchmark and save every framework the PR touches
/benchmark-test -t <test> Benchmark all enabled frameworks subscribed to <test> and save the results

For /benchmark, always specify -f <framework>; the flags combine in any order. Results come back as a comment with a per-profile table of RPS, p99, CPU and memory — one table per framework on multi runs. A new benchmark comment while a run is in flight queues behind it (one deep) instead of cancelling it. For multi-framework PRs (dependency bumps, same-language refactors) prefer /benchmark-multiple, which runs everything in a single job and commits all saved results together, so no run overwrites another. --compare works on single-framework runs only.

What the deltas are measured against. By default, this framework's own results published on main - answering "did this change help?". When you are tuning a variant or a successor entry, --compare re-bases them on another entry instead:

/benchmark -f genhttp --compare genhttp-kestrel

The reply states which baseline it used, and profiles the other framework does not run show n/a rather than a delta.


Run benchmarks locally

You can validate and benchmark your framework locally with the lite script — no CPU pinning, fixed connection counts, all load generators run in Docker.

./scripts/validate.sh <framework>
./scripts/benchmark-lite.sh <framework> baseline
./scripts/benchmark-lite.sh --load-threads 4 <framework>

Requirements: Docker Engine on Linux. Load generators (gcannon, h2load, h2load-h3, wrk) are built as self-contained Docker images on first run.

…r only

Two more processes of the same file on Moro's HTTP/2 server (Node's http2
module behind the framework's request and response objects): :8443 with ALPN
h2 for baseline-h2 and static-h2, :8082 cleartext prior-knowledge h2 for
baseline-h2c and json-h2c. The compression middleware moves to the /json
route of the plain listener alone, so json-tls stays on the router's fast
path. Picks up MoroJS 1.8.15.
… gzip level 3, prepared replies

The entry was losing to the other JS entries on four fronts, none of them the
harness. Each is fixed where it lived - the engine, the framework, or here.

- echo-ws-pipeline (6x behind): the engine answered every WebSocket frame with
  its own send(). @morojs/engine 1.1.14 corks the connection for the whole
  read, so a pipelined batch leaves in one write; nothing changes here beyond
  the version.
- static-tls (10x behind): staticFiles() resolved, stat'ed and read the file
  and its sidecars on every request, five to eight threadpool round trips
  shared by all 64 worker threads of the process. MoroJS 1.8.16 adds
  staticFiles({ cache: true }): files and .br/.gz sidecars read once and
  served from memory with their validators, the disk stat'ed again at most
  once a second and on directory changes (same-length replacements are
  noticed, so the staleness probe passes).
- json-comp (3x) and gateway-64 (2x, its load sends Accept-Encoding): gzip at
  the default level 6 per request. The route now asks for gzip level 3
  through the middleware's new gzip option, with the encoder reused between
  bodies (reuseEncoders); brotli quality 3 stays available for a client that
  accepts nothing else. Measured on the json-comp bodies: a little over a
  third of the CPU of level 6 for 9% more bytes.
- json-tls, 8gbit, baseline POST (10-30%): the static middleware on the TLS
  listener and every request body forced the engine server off its
  synchronous dispatch. 1.8.16 runs sync middleware chains and body parsing
  on the sync path, so the path check stays cheap; /echo and /baseline2 on
  the engine no longer set a Content-Type by hand, so they go out through the
  framework's prepared replies.

Also: CERTS_DIR, STATIC_ROOT and WORKERS environment overrides for running
the entry outside the container, the Dockerfile's threadpool note brought up
to date, README and meta description updated.

Local A/B on a 4-worker macOS run, published 1.8.15 against this: pipelined
WebSocket echo 257K -> 971K frames/s, static over plaintext 11.5K -> 49.5K
rps (9.7K -> 33.9K over TLS), /json/50 with gzip 11.8K -> 17.6K rps,
baseline POST +12%.
@M-Chris

M-Chris commented Oct 29, 2026

Copy link
Copy Markdown
Contributor Author

/benchmark -f morojs --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 Results

Framework: morojs | Test: all tests

Test Conn RPS Rate CPU/req p99 p99.9 CPU Mem Δ RPS Δ Mem
baseline 4096 2,423,165 — — — — 6687.5% 8.4GiB +9.9% +110.0%
pipelined 4096 37,587,043 — — — — 6665.3% 8.2GiB -0.2% +110.3%
limited-conn 4096 1,996,238 — — — — 6519.4% 8.4GiB +5.9% +110.0%
json-comp 4096 483,296 — — — — 6252.8% 9.7GiB +228.6% +9.0%
json-comp 16384 479,027 — — — — 6568.6% 11.0GiB +268.9% -6.0%
json-tls 4096 960,598 — — — — 6622.1% 9.0GiB +13.7% +114.3%
8gbit 512 49,295 0.9859 68.82us 153.0us 6370.0us 322.5% 9.2GiB ~0% +124.4%
static-tls 1024 391,428 — — — — 6446.7% 8.5GiB +452.0% +93.2%
async-db 1024 194,463 — — — — 5175.0% 9.4GiB +0.7% +91.8%
fortunes 1024 62,933 — — — — 6493.6% 10.1GiB +2.1% +65.6%
baseline-h2 256 792,420 — — — — 6359.6% 13.2GiB NEW NEW
baseline-h2 1024 736,217 — — — — 6351.6% 13.8GiB NEW NEW
static-h2 256 455,706 — — — — 6475.9% 13.6GiB NEW NEW
static-h2 1024 405,817 — — — — 6470.0% 14.9GiB NEW NEW
baseline-h2c 256 913,697 — — — — 6385.4% 12.9GiB NEW NEW
baseline-h2c 1024 872,741 — — — — 6398.7% 13.2GiB NEW NEW
baseline-h2c 4096 805,234 — — — — 6292.2% 14.0GiB NEW NEW
json-h2c 1024 703,487 — — — — 6462.0% 13.5GiB NEW NEW
json-h2c 4096 603,990 — — — — 6416.3% 13.0GiB NEW NEW
gateway-64 512 253,893 — — — — 5028.4% 4.6GiB +93.1% ~0%
gateway-64 1024 255,138 — — — — 5679.7% 5.0GiB +93.3% -19.4%
gateway-h3 64 82,650 — — — — 3389.0% 2.6GiB +1.6% +62.5%
gateway-h3 256 59,242 — — — — 2564.8% 3.6GiB +0.6% +44.0%
production-stack 256 109,749 — — — — 2610.3% 3.2GiB -9.2% +33.3%
production-stack 1024 106,702 — — — — 2805.4% 3.9GiB +0.2% +25.8%
echo-ws 512 3,500,108 — — — — 6415.4% 8.0GiB +3.5% +110.5%
echo-ws 4096 3,598,655 — — — — 6313.1% 8.3GiB +4.4% +112.8%
echo-ws 16384 3,206,405 — — — — 6088.9% 8.3GiB +2.3% +102.4%
echo-ws-pipeline 512 20,838,912 — — — — 6712.7% 8.3GiB +384.5% +112.8%
echo-ws-pipeline 4096 21,407,936 — — — — 6773.0% 8.3GiB +382.8% +107.5%
echo-ws-pipeline 16384 20,690,537 — — — — 6706.0% 9.0GiB +379.4% +114.3%
echo-ws-limited 512 1,841,352 — — — — 5663.8% 8.5GiB +9.3% +97.7%
echo-ws-limited 4096 2,255,428 — — — — 6176.9% 8.6GiB +12.4% +68.6%
latency-1m 1024 997,910 0.9979 27.74us 213.0us 2415.0us 3046.4% 8.3GiB ~0% +112.8%
latency-10k 1024 9,982 0.9982 33.85us 114.0us 233.0us 32.4% 7.8GiB ~0% +116.7%
latency-500k-8cpu 1024 392,420 0.7848 ⚠️ 20.32us 5871616.0us 6117376.0us 788.2% 1.1GiB -1.0% +128.0%
async 32000 1,952,746 — — — — 6205.5% 9.9GiB -1.8% +110.6%

Composite score, main against this run, in the board's default view:

Family main this run Δ
HTTP/1.1 5524.8 (#15 of 102) 6278.8 (#8 of 102) +754.0
HTTP/2 - 906.0 (#17 of 36) -
Gateway 1836.8 (#5 of 9) 2273.2 (#4 of 9) +436.4
WebSocket 1694.0 (#10 of 35) 2110.2 (#7 of 35) +416.3

The results on main were measured in another session, so a few points up or down can be the machine and not the change.

Full log
  "duration_s": 20.002,
  "requests": 199670,
  "bytes": 23361390,
  "achieved_rate": 9982.36,
  "target_rate": 10000,
  "target_rate_end": 10000,
  "rate_ratio": 0.9982,
  "bytes_per_sec": 1167935.66,
  "error_rate": 0.000000,
  "max_schedule_lag_us": 0,
  "latency_us": {
    "min": 35, "mean": 79.8, "stdev": 518.9, "max": 38239,
    "p50": 63, "p75": 70, "p90": 85, "p99": 114, "p99_9": 233, "p99_99": 27304
  },
  "status_codes": { "1xx": 0, "2xx": 199670, "3xx": 0, "4xx": 0, "5xx": 0 },
  "errors": { "connect": 0, "read": 0, "write": 0, "timeout": 0, "deadline": 0, "non_2xx_3xx": 0 },
  "latency_histogram": "HISTFAAAAjJ4nC1QXUhTYRg+73O+s7Oz/zHXmD+pbeqFLi9s1ZIQqkHURUqEJF10I2U/BEVFhTdt/iASmEImaevnYhcWRaRejYiQihixQMRrMfEipIsYsYuezc7H+d6/532e731r05MBTcO4tvPp/61UgskRrWt7J5EElCvaNypZKcgctvBQn1Zr5nzgSSzXs359dUyyE/JyQjKjsnL39bVP/dnzuf7pW5spyY3I55Qs3/x+afzcxomVruKBdEehfbttueV5ZLO+VJ0P/a2aqlr3pT1pV9Ex49iy/tjz9pJZMD+YRducLW9bs9bdC54FT8m76p/3/nYXncPODWJ+mQ/sb8xvxAwbS2pMz+A+vsqSfJQpyciMXDl+sa/72MHd+9uaaxui+47sPRRt2FO9q9nnc/hcdpfLrjTF36YppWxQCl6gBhYMmBWr8xjwowMvBLPAKwMpA7MKT+14B4ShoRcpoXHDiRsI4L1ggGEPBpkYxBfBD8FPQZBMneTqpMRZ+jXs0HCB5zTi9I/iJBsG0EQtDQmQ6gweCSsxNPI1i8AdvBXcw2OghcomS2GECA/jNhAhp8VkEPVUCfMO0U+Si4VGht5Kgq0WjYE6qmnK5B3jfO18U1nVIGl5+jiuEq6T3MmHnCJfHX9DJYhqJaasodO3Kvspr6EeFLfoBNnoR1x5WQjxREjRW1mnxttLOrfSMSTscBIY4pjcWRNrQ+U96iQ4zCCBZ0JskhA/BVsrKy5PfBmLgn9jcHkO"
}
[info] CPU 32.4% | Mem 7.8GiB
[info] run 3 wins on score

=== Best: 9982 req/s (CPU: 32.4%, Mem: 7.8GiB) ===
[info] exact CPU: 6.76 core-seconds | 33.850 us/req
=== Fixed-rate: cpu/req 33.85us | p99 114.0us | p99.9 233.0us | rate_ratio 0.9982 ===
[info] saved results/latency-10k/1024/morojs.json
httparena-bench-morojs
httparena-bench-morojs

==============================================
=== morojs / latency-500k-8cpu / 1024c (tool=zrk) ===
==============================================
[info] waiting for server...
[info] server ready

[run 1/3]
{
  "zrk_version": "2.3.0",
  "target": { "url": "http://localhost:8080/baseline11?a=1&b=2", "method": "GET" },
  "config": { "connections": 1024, "launched": 1024, "duration_s": 20.000, "closed": false, "target_rate": 500000, "timeout_ms": 2000, "deadline_ms": 0, "deadline_abort": false, "record_timeouts": true },
  "duration_s": 20.005,
  "requests": 7820426,
  "bytes": 914989842,
  "achieved_rate": 390922.75,
  "target_rate": 500000,
  "target_rate_end": 500000,
  "rate_ratio": 0.7818,
  "bytes_per_sec": 45737961.62,
  "error_rate": 0.000000,
  "max_schedule_lag_us": 6189691,
  "latency_us": {
    "min": 97, "mean": 2172056.8, "stdev": 1320838.8, "max": 6193151,
    "p50": 2061824, "p75": 3056640, "p90": 4072448, "p99": 5302272, "p99_9": 5654528, "p99_99": 5916672
  },
  "status_codes": { "1xx": 0, "2xx": 7820426, "3xx": 0, "4xx": 0, "5xx": 0 },
  "errors": { "connect": 0, "read": 0, "write": 0, "timeout": 0, "deadline": 0, "non_2xx_3xx": 0 },
  "latency_histogram": "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"
}
[info] CPU 810.8% | Mem 1.1GiB

[run 2/3]
{
  "zrk_version": "2.3.0",
  "target": { "url": "http://localhost:8080/baseline11?a=1&b=2", "method": "GET" },
  "config": { "connections": 1024, "launched": 1024, "duration_s": 20.000, "closed": false, "target_rate": 500000, "timeout_ms": 2000, "deadline_ms": 0, "deadline_abort": false, "record_timeouts": true },
  "duration_s": 20.007,
  "requests": 7793372,
  "bytes": 911824524,
  "achieved_rate": 389534.57,
  "target_rate": 500000,
  "target_rate_end": 500000,
  "rate_ratio": 0.7791,
  "bytes_per_sec": 45575545.05,
  "error_rate": 0.000000,
  "max_schedule_lag_us": 5846581,
  "latency_us": {
    "min": 45, "mean": 2145662.0, "stdev": 1383448.4, "max": 5853183,
    "p50": 1949184, "p75": 3243008, "p90": 4105216, "p99": 5183488, "p99_9": 5457920, "p99_99": 5703680
  },
  "status_codes": { "1xx": 0, "2xx": 7793372, "3xx": 0, "4xx": 0, "5xx": 0 },
  "errors": { "connect": 0, "read": 0, "write": 0, "timeout": 0, "deadline": 0, "non_2xx_3xx": 0 },
  "latency_histogram": "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"
}
[info] CPU 792.2% | Mem 1.1GiB

[run 3/3]
{
  "zrk_version": "2.3.0",
  "target": { "url": "http://localhost:8080/baseline11?a=1&b=2", "method": "GET" },
  "config": { "connections": 1024, "launched": 1024, "duration_s": 20.000, "closed": false, "target_rate": 500000, "timeout_ms": 2000, "deadline_ms": 0, "deadline_abort": false, "record_timeouts": true },
  "duration_s": 20.007,
  "requests": 7850972,
  "bytes": 918563724,
  "achieved_rate": 392420.29,
  "target_rate": 500000,
  "target_rate_end": 500000,
  "rate_ratio": 0.7848,
  "bytes_per_sec": 45913174.18,
  "error_rate": 0.000000,
  "max_schedule_lag_us": 6509151,
  "latency_us": {
    "min": 41, "mean": 2023198.3, "stdev": 1588511.7, "max": 6512639,
    "p50": 1740288, "p75": 3214336, "p90": 4376576, "p99": 5871616, "p99_9": 6117376, "p99_99": 6359040
  },
  "status_codes": { "1xx": 0, "2xx": 7850972, "3xx": 0, "4xx": 0, "5xx": 0 },
  "errors": { "connect": 0, "read": 0, "write": 0, "timeout": 0, "deadline": 0, "non_2xx_3xx": 0 },
  "latency_histogram": "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"
}
[info] CPU 788.2% | Mem 1.1GiB
[info] run 3 wins on score

=== Best: 392420 req/s (CPU: 788.2%, Mem: 1.1GiB) ===
[info] exact CPU: 159.51 core-seconds | 20.317 us/req
=== Fixed-rate: cpu/req 20.32us | p99 5871616.0us | p99.9 6117376.0us | rate_ratio 0.7848 ===
[warn] offered rate fell short: rate_ratio=0.7848 (target 500000/s)
[warn]   the CPU number is not comparable with runs that held the rate
[info] saved results/latency-500k-8cpu/1024/morojs.json
httparena-bench-morojs
httparena-bench-morojs

==============================================
=== morojs / async / 32000c (tool=gcannon) ===
==============================================
[info] waiting for server...
[info] server ready

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


  Thread Stats   Avg      p50      p90      p99    p99.9
    Latency   17.58ms   13.70ms   26.80ms   35.30ms   61.30ms

  16762794 requests in 10.00s, 16730794 responses
  Throughput: 1.67M req/s
  Bandwidth:  188.24MB/s
  Status codes: 2xx=16730794, 3xx=0, 4xx=0, 5xx=0
  Latency samples: 16730794 / 16730794 responses (100.0%)
[info] CPU 5491.2% | Mem 10.2GiB

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


  Thread Stats   Avg      p50      p90      p99    p99.9
    Latency   16.28ms   15.70ms   19.30ms   26.60ms   35.50ms

  19559462 requests in 10.00s, 19527462 responses
  Throughput: 1.95M req/s
  Bandwidth:  219.70MB/s
  Status codes: 2xx=19527462, 3xx=0, 4xx=0, 5xx=0
  Latency samples: 19527462 / 19527462 responses (100.0%)
[info] CPU 6205.5% | Mem 9.9GiB

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


  Thread Stats   Avg      p50      p90      p99    p99.9
    Latency   16.32ms   15.70ms   19.40ms   26.70ms   35.00ms

  19513705 requests in 10.00s, 19481705 responses
  Throughput: 1.95M req/s
  Bandwidth:  219.19MB/s
  Status codes: 2xx=19481705, 3xx=0, 4xx=0, 5xx=0
  Latency samples: 19481705 / 19481705 responses (100.0%)
[info] CPU 6162.4% | Mem 9.6GiB

=== Best: 1952746 req/s (CPU: 6205.5%, Mem: 9.9GiB) ===
[info] input BW: 89.39MB/s (avg template: 48 bytes)
[info] saved results/async/32000/morojs.json
httparena-bench-morojs
httparena-bench-morojs
[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/results/morojs.json - 37 new, 37 total
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/current.json
[info] done
httparena-postgres
[info] restoring loopback MTU to 65536

…imer callback

json-comp is scored on rate times the square of the field's smallest bytes
per reply over the entry's own. The first run on 1.8.16 had gzip level 3 at
483K req/s and 1446 bytes per reply, 7% more requests than spliffy's brotli 3
but 10% more bytes, which the square turns into a 9% lower score. brotli at
quality 3 goes first in the encodings order, with the window fitted to the
body by the framework; gzip level 3 stays for a client that accepts nothing
else.

/delay/:ms sends its reply from the timer's callback instead of awaiting the
timer in an async handler. The reply is the same; what goes away is three
promise hops per request (the handler's, the router's, the server's) on a
profile that measures what a framework does while two million requests a
second are pending.
@M-Chris

M-Chris commented Oct 30, 2026 •

Copy link
Copy Markdown
Contributor Author

/benchmark -f morojs -t json-comp --save

@github-actions

Copy link
Copy Markdown
Contributor

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

@M-Chris

M-Chris commented Oct 30, 2026

Copy link
Copy Markdown
Contributor Author

/benchmark -f morojs -t async --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 Results

Framework: morojs | Test: async

Test Conn RPS CPU Mem Δ RPS Δ Mem
async 32000 2,326,696 5952.9% 10.0GiB +17.1% +112.8%

Composite score, main against this run, in the board's default view:

Family main this run Δ
HTTP/1.1 5524.8 (#15 of 102) 6435.6 (#6 of 102) +910.8
HTTP/2 - 906.0 (#17 of 36) -
Gateway 1836.8 (#5 of 9) 2273.2 (#4 of 9) +436.4
WebSocket 1694.0 (#10 of 35) 2110.2 (#7 of 35) +416.3

The results on main were measured in another session, so a few points up or down can be the machine and not the change.

Full log
[info] available CPUs: 128
[info] framework: morojs (morojs, JS)
[info] subscribed tests: baseline,latency-1m,latency-10k,latency-500k-8cpu,pipelined,limited-conn,async,json-comp,8gbit,async-db,static-tls,echo-ws,echo-ws-pipeline,echo-ws-limited,json-tls,gateway-64,gateway-h3,production-stack,fortunes,baseline-h2,static-h2,baseline-h2c,json-h2c
[info] building image: httparena-morojs
#0 building with "default" instance using docker driver

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

#2 [internal] load metadata for docker.io/library/node:26-trixie-slim
#2 DONE 0.7s

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

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

#5 [build 1/4] FROM docker.io/library/node:26-trixie-slim@sha256:e4db4c914bf8ad241bd24804fc25d272d89bad97e68cdc8a1414862790a02c39
#5 resolve docker.io/library/node:26-trixie-slim@sha256:e4db4c914bf8ad241bd24804fc25d272d89bad97e68cdc8a1414862790a02c39 0.0s done
#5 DONE 0.1s

#6 [build 4/4] RUN npm install --omit=dev --no-audit --no-fund
#6 CACHED

#7 [build 3/4] COPY package.json .
#7 CACHED

#8 [stage-1 3/5] COPY --from=build /app/node_modules ./node_modules
#8 CACHED

#9 [stage-1 4/5] COPY app.mjs .
#9 CACHED

#10 [build 2/4] WORKDIR /app
#10 CACHED

#11 [stage-1 5/5] COPY views ./views
#11 CACHED

#12 exporting to image
#12 exporting layers done
#12 exporting manifest sha256:ea362b51cf329924352589116d2765049ebb3be18a1aaa0bc9310ca626442470
#12 exporting manifest sha256:ea362b51cf329924352589116d2765049ebb3be18a1aaa0bc9310ca626442470 0.2s done
#12 exporting config sha256:ab62b80fb59e5cf46a816895e904c252e1d3f853902163713da5a258c20d57f1
#12 exporting config sha256:ab62b80fb59e5cf46a816895e904c252e1d3f853902163713da5a258c20d57f1 0.1s done
#12 exporting attestation manifest sha256:19037dcbe5a4117af0ae152de0c9af72e4951bf4ad8de8e7da3adab2acc0b25d 0.0s done
#12 exporting manifest list sha256:9517b5bc270f58bef11bca01e0d6866d3feffac32a698d9dc32463a9ff92107e
#12 exporting manifest list sha256:9517b5bc270f58bef11bca01e0d6866d3feffac32a698d9dc32463a9ff92107e 0.0s done
#12 naming to docker.io/library/httparena-morojs:latest done
#12 unpacking to docker.io/library/httparena-morojs:latest done
#12 DONE 0.4s
[info] zrk: docker mode (zrk:local)
[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)

==============================================
=== morojs / async / 32000c (tool=gcannon) ===
==============================================
[info] waiting for server...
[info] server ready

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


  Thread Stats   Avg      p50      p90      p99    p99.9
    Latency   14.27ms   13.10ms   16.70ms   29.40ms   82.30ms

  20053915 requests in 10.00s, 20021915 responses
  Throughput: 2.00M req/s
  Bandwidth:  225.27MB/s
  Status codes: 2xx=20021915, 3xx=0, 4xx=0, 5xx=0
  Latency samples: 20021915 / 20021915 responses (100.0%)
[info] CPU 5703.7% | Mem 10.1GiB

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


  Thread Stats   Avg      p50      p90      p99    p99.9
    Latency   13.66ms   13.20ms   15.70ms   19.60ms   26.50ms

  23298966 requests in 10.00s, 23266966 responses
  Throughput: 2.33M req/s
  Bandwidth:  261.79MB/s
  Status codes: 2xx=23266966, 3xx=0, 4xx=0, 5xx=0
  Latency samples: 23266966 / 23266966 responses (100.0%)
[info] CPU 5952.9% | Mem 10.0GiB

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


  Thread Stats   Avg      p50      p90      p99    p99.9
    Latency   13.68ms   13.30ms   15.80ms   19.60ms   24.50ms

  23230915 requests in 10.00s, 23198915 responses
  Throughput: 2.32M req/s
  Bandwidth:  261.01MB/s
  Status codes: 2xx=23198915, 3xx=0, 4xx=0, 5xx=0
  Latency samples: 23198915 / 23198915 responses (100.0%)
[info] CPU 5963.3% | Mem 10.0GiB

=== Best: 2326696 req/s (CPU: 5952.9%, Mem: 10.0GiB) ===
[info] input BW: 106.51MB/s (avg template: 48 bytes)
[info] saved results/async/32000/morojs.json
httparena-bench-morojs
httparena-bench-morojs
[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/results/morojs.json - 1 new, 37 total
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/current.json
[info] done
httparena-postgres
[info] restoring loopback MTU to 65536

gateway-h3 at 256 connections ran at 59K req/s with a p99 of 0.8 s and
production-stack at 256 with a p99 of 3.8 s, both with the server mostly
idle and the edge holding memory: requests were waiting, not computing.
Both edges keep an idle pool of 2048 upstream connections under 8K-32K
requests in flight, so they dial and drop thousands of backend connections
per wave. At the engine's default listen backlog of 512 a wave overflows a
worker's accept queue, the kernel drops the SYN and the dialer retries it
after one second (then two), which is exactly those tails.

Reproduced in a Linux container with 4096 concurrent dialers opening a
connection per request against four workers: p99 1019 ms at the default
backlog, 52 ms at 4096 with the same throughput; uWebSockets.js under the
same load sits at 46 ms. The backlog goes to 16384 through server.backlog,
the documented option; the harness raises somaxconn to 65535 for this and
other entries run 4K-16K.
@M-Chris

M-Chris commented Oct 30, 2026

Copy link
Copy Markdown
Contributor Author

/benchmark -f morojs -t gateway-h3 --save

@github-actions

Copy link
Copy Markdown
Contributor

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

@M-Chris

M-Chris commented Oct 30, 2026

Copy link
Copy Markdown
Contributor Author

/benchmark -f morojs -t production-stack --save

@M-Chris

M-Chris commented Oct 30, 2026

Copy link
Copy Markdown
Contributor Author

/benchmark -f morojs -t gateway-64 --save

@github-actions

Copy link
Copy Markdown
Contributor

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

1 similar comment
@github-actions

Copy link
Copy Markdown
Contributor

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

M-Chris and others added 2 commits October 30, 2026 09:01
… capped at 240

The delay route gained a fifth more throughput on the board by answering
from a timer callback instead of awaiting in an async handler: three promise
hops per request (the handler's, the router's, the server's) were the
difference. /async-db and /fortunes paid the same three on every request;
both now answer from pg's callback, the reply unchanged. fortunes also stops
rendering through ejs.renderFile's promise: the template file is compiled
once per worker with ejs.compile and rendered per request, with the same
<%= %> escaping.

The pool is capped at 240 connections across the cluster, as the other
entries cap it: DATABASE_MAX_CONN is the server's max_connections, and a
cluster sized exactly to it is refused its last connections.

pg-native, which gives the uWebSockets-based entries their async-db and
fortunes margin, is not an option here: its libpq addon is not
context-aware, so it loads in one worker thread and the next one gets
"Module did not self-register" (verified on Node 26 with four threads).
@github-actions

Copy link
Copy Markdown
Contributor

Benchmark Results

Framework: morojs | Test: gateway-h3

Test Conn RPS CPU Mem Δ RPS Δ Mem
gateway-h3 64 83,641 3681.4% 2.7GiB +2.8% +68.8%
gateway-h3 256 59,424 2769.7% 3.7GiB +0.9% +48.0%

Composite score, main against this run, in the board's default view:

Family main this run Δ
HTTP/1.1 5524.8 (#15 of 102) 6435.6 (#6 of 102) +910.8
HTTP/2 - 906.0 (#17 of 36) -
Gateway 1836.8 (#5 of 9) 2280.4 (#4 of 9) +443.7
WebSocket 1694.0 (#10 of 35) 2110.2 (#7 of 35) +416.3

The results on main were measured in another session, so a few points up or down can be the machine and not the change.

Full log

#8 [server internal] load build context
#8 transferring context: 125B done
#8 DONE 0.1s

#9 [proxy internal] load build context
#9 transferring context: 31B done
#9 DONE 0.1s

#10 [server build 1/4] FROM docker.io/library/node:26-trixie-slim@sha256:e4db4c914bf8ad241bd24804fc25d272d89bad97e68cdc8a1414862790a02c39
#10 resolve docker.io/library/node:26-trixie-slim@sha256:e4db4c914bf8ad241bd24804fc25d272d89bad97e68cdc8a1414862790a02c39 0.1s done
#10 DONE 0.1s

#11 [server build 2/4] WORKDIR /app
#11 CACHED

#12 [server stage-1 4/5] COPY app.mjs .
#12 CACHED

#13 [server build 3/4] COPY package.json .
#13 CACHED

#14 [server stage-1 3/5] COPY --from=build /app/node_modules ./node_modules
#14 CACHED

#15 [server build 4/4] RUN npm install --omit=dev --no-audit --no-fund
#15 CACHED

#16 [server stage-1 5/5] COPY views ./views
#16 CACHED

#17 [proxy 1/2] FROM docker.io/library/caddy:2-alpine@sha256:e70b164da81ef698b3ad19af799ea6086ce6d9e48ed4079eb9fe26f6fbf14ee5
#17 resolve docker.io/library/caddy:2-alpine@sha256:e70b164da81ef698b3ad19af799ea6086ce6d9e48ed4079eb9fe26f6fbf14ee5 0.1s done
#17 DONE 0.1s

#18 [proxy 2/2] COPY Caddyfile /etc/caddy/Caddyfile
#18 CACHED

#19 [server] exporting to image
#19 exporting layers done
#19 exporting manifest sha256:e1e089d918e49e3f631f0ff442082791746c121426ae32d7c6cd8e3de45deac6 done
#19 exporting config sha256:ec3d56b60fabd720c32652df7f2436d1a408f1b1232b458cd7352d763aa4d5ea 0.0s done
#19 exporting attestation manifest sha256:b230514ef913fb29266c67e358a38eb353504c87dd421ce10c1b0e57734f2e69
#19 exporting attestation manifest sha256:b230514ef913fb29266c67e358a38eb353504c87dd421ce10c1b0e57734f2e69 0.1s done
#19 exporting manifest list sha256:b71770ac1f66fc531df527035c29c1ddc15e3f7f26b9f8adac296edd9051cfeb
#19 exporting manifest list sha256:b71770ac1f66fc531df527035c29c1ddc15e3f7f26b9f8adac296edd9051cfeb 0.0s done
#19 naming to docker.io/library/httparena-morojs-gateway-h3-server:latest 0.0s done
#19 unpacking to docker.io/library/httparena-morojs-gateway-h3-server:latest 0.0s done
#19 DONE 0.3s

#20 [proxy] exporting to image
#20 exporting layers done
#20 exporting manifest sha256:8a900ddf8fc50864cf852168c8e8d24ca786e7cd5145d5a89b5c5eff03a187de done
#20 exporting config sha256:970b507b9e659efb796c461609bf7e40895d93a47b7af2724e07e316674d4882 0.0s done
#20 exporting attestation manifest sha256:d91eba56bcb1169679b3d7d865cec17a89de5685f014e0be837e71d5bed72384 0.1s done
#20 exporting manifest list sha256:d37e06a6285377d295f6f4bc4e7810d4d38bd67aab113e9c53a9679e9f1bd1fa 0.0s done
#20 naming to docker.io/library/httparena-morojs-gateway-h3-proxy:latest 0.0s done
#20 unpacking to docker.io/library/httparena-morojs-gateway-h3-proxy:latest 0.0s done
#20 DONE 0.3s

#21 [server] resolving provenance for metadata file
#21 DONE 0.0s

#22 [proxy] resolving provenance for metadata file
#22 DONE 0.0s
 Image httparena-morojs-gateway-h3-server Built 
 Image httparena-morojs-gateway-h3-proxy Built 
 Container httparena-morojs-gateway-h3-server-1 Creating 
 Container httparena-morojs-gateway-h3-server-1 Created 
 Container httparena-morojs-gateway-h3-proxy-1 Creating 
 Container httparena-morojs-gateway-h3-proxy-1 Created 
 Container httparena-morojs-gateway-h3-server-1 Starting 
 Container httparena-morojs-gateway-h3-server-1 Started 
 Container httparena-morojs-gateway-h3-proxy-1 Starting 
 Container httparena-morojs-gateway-h3-proxy-1 Started 
[info] gateway containers: 2 (73c3bfdb5d09 5fe9ccf8cc3e )
[info] waiting for server...
[info] server ready

[run 1/3]
starting benchmark...
7.
45.
.
2.
TLS Protocol: TLSv1.3
Cipher: TLS_AES_128_GCM_SHA256
Server Temp Key: X25519 253 bits
Certificate: RSA 2048 bits
Negotiated Group: x25519
Resumption: no
Application protocol: h3
12. Stopping all clients.
2Stopped all clients for thread #14
. Stopping all clients.

finished in 5.03s, 56707.00 req/s, 606.17MB/s
requests: 283535 total, 291727 started, 283535 done, 283535 succeeded, 0 failed, 0 errored, 0 timeout
status codes: 288746 2xx, 0 3xx, 0 4xx, 0 5xx
traffic: 2.96GB (3178082980) total, 20.10MB (21074610) headers (space savings 50.83%), 2.94GB (3155184300) data
UDP datagram: 92027 sent, 2283876 received
                 min         max         median     p95        p99        mean         sd        +/- sd
request     :     1.37ms       1.82s     70.78ms   522.12ms   792.65ms   134.82ms    169.58ms    87.15%
connect     :     5.36ms    497.56ms    125.77ms   427.71ms   452.67ms   158.39ms    124.22ms    67.97%
TTFB        :    14.46ms    551.49ms    198.54ms   482.78ms   535.35ms   235.04ms    135.77ms    64.84%
req/s       :     111.79      350.73      222.28     289.38     329.93     221.48       42.44    68.75%
min RTT     :       11us      1.80ms        99us      331us     1.01ms      118us       175us    94.53%
smoothed RTT:    12.95ms     73.13ms     27.46ms    47.02ms    68.17ms    29.19ms      9.25ms    77.34%
packets sent:        298         522         360        406        440     361.48       29.09    69.92%
packets recv:       4419       14251        8951      11722      13357    8923.39     1738.76    68.36%
packets lost:          0           0           0          0          0       0.00        0.00   100.00%
GRO packets :          1          17           4         14         14       6.34        5.37    71.36%
[info] CPU 2968.7% | Mem 3.3GiB
[info]   proxy: 2043% 1.0GiB | server: 926% 2.3GiB

[run 2/3]
starting benchmark...
.
.Main benchmark duration is started for thread #15.

29.
TLS Protocol: TLSv1.3
Cipher: TLS_AES_128_GCM_SHA256
Server Temp Key: X25519 253 bits
Certificate: RSA 2048 bits
Negotiated Group: x25519
Resumption: no
Application protocol: h3
.


40. Stopping all clients.

finished in 5.02s, 56773.00 req/s, 607.30MB/s
requests: 283865 total, 292057 started, 283865 done, 283865 succeeded, 0 failed, 0 errored, 0 timeout
status codes: 289032 2xx, 0 3xx, 0 4xx, 0 5xx
traffic: 2.97GB (3184027011) total, 20.12MB (21092610) headers (space savings 50.83%), 2.94GB (3161130881) data
UDP datagram: 97903 sent, 2286315 received
                 min         max         median     p95        p99        mean         sd        +/- sd
request     :     1.57ms       1.97s     69.10ms   548.92ms   822.50ms   137.58ms    178.89ms    86.98%
connect     :     3.24ms    202.29ms     21.37ms   128.88ms   178.75ms    44.40ms     46.29ms    76.56%
TTFB        :     5.07ms    280.46ms     88.08ms   175.77ms   232.78ms    88.53ms     54.38ms    65.63%
req/s       :     102.99      372.32      219.36     305.76     342.54     221.74       45.57    74.61%
min RTT     :       10us      1.84ms        78us      206us      963us      100us       164us    97.27%
smoothed RTT:    12.78ms     70.33ms     28.17ms    47.47ms    59.39ms    30.03ms      9.39ms    69.14%
packets sent:        320         484         382        435        459     384.43       29.47    69.14%
packets recv:       4064       15065        8839      12364      13890    8932.92     1866.34    75.39%
packets lost:          0           0           0          0          0       0.00        0.00   100.00%
GRO packets :          1          17           4         14         14       6.11        5.28    73.48%
[info] CPU 2757.4% | Mem 3.5GiB
[info]   proxy: 2012% 1.2GiB | server: 746% 2.3GiB

[run 3/3]
starting benchmark...
17.
.
29.
28.
TLS Protocol: TLSv1.3
Cipher: TLS_AES_128_GCM_SHA256
Server Temp Key: X25519 253 bits
Certificate: RSA 2048 bits
Negotiated Group: x25519
Resumption: no
Application protocol: h3
15. Stopping all clients.
25Stopped all clients for thread #22. Stopping all clients.



16. Stopping all clients.

finished in 5.03s, 58750.00 req/s, 628.20MB/s
requests: 293750 total, 301942 started, 293750 done, 293750 succeeded, 0 failed, 0 errored, 0 timeout
status codes: 298907 2xx, 0 3xx, 0 4xx, 0 5xx
traffic: 3.07GB (3293599645) total, 20.80MB (21811597) headers (space savings 50.83%), 3.05GB (3269899669) data
UDP datagram: 98182 sent, 2364252 received
                 min         max         median     p95        p99        mean         sd        +/- sd
request     :     1.40ms       1.64s     68.01ms   537.75ms   801.81ms   133.69ms    172.94ms    87.09%
connect     :     4.48ms    185.16ms     15.61ms   115.91ms   160.02ms    35.91ms     37.86ms    80.86%
TTFB        :     6.97ms    249.88ms     45.42ms   158.75ms   211.09ms    63.89ms     45.27ms    78.52%
req/s       :     149.19      393.92      220.08     310.74     356.13     229.46       43.37    72.27%
min RTT     :       10us      2.12ms        64us      240us     1.31ms      104us       213us    96.88%
smoothed RTT:    12.84ms     60.61ms     27.76ms    44.08ms    56.79ms    28.69ms      8.58ms    72.27%
packets sent:        318         469         385        431        452     385.52       25.86    71.48%
packets recv:       5939       15962        8866      12535      14418    9237.36     1769.21    72.27%
packets lost:          0           0           0          0          0       0.00        0.00   100.00%
GRO packets :          1          17           4         14         14       6.31        5.36    71.59%
[info] CPU 2769.7% | Mem 3.7GiB
[info]   proxy: 2105% 1.3GiB | server: 664% 2.3GiB

=== Best: 59424 req/s (CPU: 2769.7%, Mem: 3.7GiB) ===
[info] saved results/gateway-h3/256/morojs.json
[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/results/morojs.json - 2 new, 37 total
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/current.json
[info] done
httparena-postgres
[info] restoring loopback MTU to 65536

…t upgrades

The engine answers a valid WebSocket handshake itself and opens the socket
(engine 1.1.15, MoroJS 1.8.17): no request and response objects, no native
round trips for the headers, query and peer address, and no trip through
JavaScript per upgrade, which is what echo-ws-limited measures with its ten
frames per connection. The handshake stays readable on the socket on demand.
Inside a read's batch each frame is now built straight into the corked
write, and the TLS listeners keep their record buffers between replies
instead of freeing and reallocating them per reply (json-tls, 8gbit,
static-tls). Nothing in the entry's own code changes; the pins and the
README do.
@github-actions

Copy link
Copy Markdown
Contributor

Benchmark Results

Framework: morojs | Test: gateway-64

Test Conn RPS CPU Mem Δ RPS Δ Mem
gateway-64 512 253,081 5177.8% 5.0GiB +92.5% +8.7%
gateway-64 1024 251,407 5289.2% 5.5GiB +90.4% -11.3%

Composite score, main against this run, in the board's default view:

Family main this run Δ
HTTP/1.1 5524.8 (#15 of 102) 6435.6 (#6 of 102) +910.8
HTTP/2 - 906.0 (#17 of 36) -
Gateway 1836.8 (#5 of 9) 2272.1 (#4 of 9) +435.4
WebSocket 1694.0 (#10 of 35) 2110.2 (#7 of 35) +416.3

The results on main were measured in another session, so a few points up or down can be the machine and not the change.

Full log
=== Best: 253081 req/s (CPU: 5177.8%, Mem: 5.0GiB) ===
[info] saved results/gateway-64/512/morojs.json

==============================================
=== morojs / gateway-64 / 1024c (tool=h2load) ===
==============================================
[info] starting gateway compose stack: morojs (gateway-64)
 Image httparena-morojs-gateway-64-server Building 
 Image httparena-morojs-gateway-64-proxy Building 
#1 [internal] load local bake definitions
#1 reading from stdin 1.20kB done
#1 DONE 0.0s

#2 [server internal] load build definition from Dockerfile
#2 transferring dockerfile: 1.02kB done
#2 DONE 0.0s

#3 [proxy internal] load build definition from Dockerfile
#3 transferring dockerfile: 241B done
#3 DONE 0.0s

#4 [proxy internal] load metadata for docker.io/library/nginx:1.27-alpine
#4 ...

#5 [server internal] load metadata for docker.io/library/node:26-trixie-slim
#5 DONE 0.2s

#4 [proxy internal] load metadata for docker.io/library/nginx:1.27-alpine
#4 DONE 0.2s

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

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

#8 [server internal] load build context
#8 transferring context: 125B done
#8 DONE 0.0s

#9 [proxy internal] load build context
#9 transferring context: 32B done
#9 DONE 0.1s

#10 [server build 1/4] FROM docker.io/library/node:26-trixie-slim@sha256:e4db4c914bf8ad241bd24804fc25d272d89bad97e68cdc8a1414862790a02c39
#10 resolve docker.io/library/node:26-trixie-slim@sha256:e4db4c914bf8ad241bd24804fc25d272d89bad97e68cdc8a1414862790a02c39 0.1s done
#10 DONE 0.1s

#11 [server stage-1 3/5] COPY --from=build /app/node_modules ./node_modules
#11 CACHED

#12 [server build 3/4] COPY package.json .
#12 CACHED

#13 [server build 4/4] RUN npm install --omit=dev --no-audit --no-fund
#13 CACHED

#14 [server build 2/4] WORKDIR /app
#14 CACHED

#15 [server stage-1 4/5] COPY app.mjs .
#15 CACHED

#16 [server stage-1 5/5] COPY views ./views
#16 CACHED

#17 [proxy 1/2] FROM docker.io/library/nginx:1.27-alpine@sha256:65645c7bb6a0661892a8b03b89d0743208a18dd2f3f17a54ef4b76fb8e2f2a10
#17 resolve docker.io/library/nginx:1.27-alpine@sha256:65645c7bb6a0661892a8b03b89d0743208a18dd2f3f17a54ef4b76fb8e2f2a10 0.1s done
#17 DONE 0.1s

#18 [proxy 2/2] COPY nginx.conf /etc/nginx/nginx.conf
#18 CACHED

#19 [server] exporting to image
#19 exporting layers done
#19 exporting manifest sha256:db742650be76909a2cd2dd06cf44b117b9c5c7b6fd39d406c87f84995584401a done
#19 exporting config sha256:006eb8fbec8b2ef8a01567b3c36666da922e4524eda458cd85edcf95f1540ec8 done
#19 exporting attestation manifest sha256:f49f42763d5333f7a387c97f0bfa2fd42f5884b206f18588a58257e2cbd3757b
#19 exporting attestation manifest sha256:f49f42763d5333f7a387c97f0bfa2fd42f5884b206f18588a58257e2cbd3757b 0.1s done
#19 exporting manifest list sha256:1c0fc92c9a259ce1f2ae0fb779cc5b89a8f02dfc96e954b2c1023901aba83d42 0.0s done
#19 naming to docker.io/library/httparena-morojs-gateway-64-server:latest
#19 naming to docker.io/library/httparena-morojs-gateway-64-server:latest 0.0s done
#19 unpacking to docker.io/library/httparena-morojs-gateway-64-server:latest done
#19 DONE 0.2s

#20 [proxy] exporting to image
#20 exporting layers done
#20 exporting manifest sha256:280e30b6fa3cc445e930520ec69e62975d983a792fdd0eca73cff84b126097f3 done
#20 exporting config sha256:ad72f5c9430275e6be286bf8c32ca0266566f70f8058e2097eaa2bc2f2c3f6e9 done
#20 exporting attestation manifest sha256:2f27fc85c1d9cdbc7cc81703c929456cc67b21f0f54e8cdafebaa03e2443176f 0.1s done
#20 exporting manifest list sha256:9cde13b95fb79ba47bf05bfef617167065873e606e9dc697a070c31826a3e0e5 0.0s done
#20 naming to docker.io/library/httparena-morojs-gateway-64-proxy:latest done
#20 unpacking to docker.io/library/httparena-morojs-gateway-64-proxy:latest 0.0s done
#20 DONE 0.2s

#21 [proxy] resolving provenance for metadata file
#21 DONE 0.0s

#22 [server] resolving provenance for metadata file
#22 DONE 0.0s
 Image httparena-morojs-gateway-64-server Built 
 Image httparena-morojs-gateway-64-proxy Built 
 Container httparena-morojs-gateway-64-server-1 Creating 
 Container httparena-morojs-gateway-64-server-1 Created 
 Container httparena-morojs-gateway-64-proxy-1 Creating 
 Container httparena-morojs-gateway-64-proxy-1 Created 
 Container httparena-morojs-gateway-64-server-1 Starting 
 Container httparena-morojs-gateway-64-server-1 Started 
 Container httparena-morojs-gateway-64-proxy-1 Starting 
 Container httparena-morojs-gateway-64-proxy-1 Started 
[info] gateway containers: 2 (efd89d2d3f7c fe9cca9f639d )
[info] waiting for server...
[info] server ready

[run 1/3]
starting benchmark...
TLS Protocol: TLSv1.3
Cipher: TLS_AES_128_GCM_SHA256
Server Temp Key: X25519 253 bits
Application protocol: h2
.
52. Stopping all clients.
16

finished in 5.06s, 200357.00 req/s, 2.46GB/s
requests: 1001785 total, 1034553 started, 1001785 done, 1001785 succeeded, 0 failed, 0 errored, 0 timeout
status codes: 1001787 2xx, 0 3xx, 0 4xx, 0 5xx
traffic: 12.30GB (13204915980) total, 91.43MB (95871223) headers (space savings 39.48%), 12.18GB (13077700276) data
                     min         max         mean         sd        +/- sd
time for request:       66us       2.05s    144.88ms    333.56ms    86.80%
time for connect:     3.86ms    123.20ms     54.84ms     33.17ms    55.57%
time to 1st byte:    10.06ms    245.52ms    128.84ms     48.84ms    69.14%
req/s           :     153.57      224.54      195.62       12.86    74.51%
[info] CPU 4711.1% | Mem 5.6GiB
[info]   server: 2299% 4.0GiB | proxy: 2412% 1.7GiB

[run 2/3]
starting benchmark...
TLS Protocol: TLSv1.3
Cipher: TLS_AES_128_GCM_SHA256
Server Temp Key: X25519 253 bits
Application protocol: h2

46. Stopping all clients.

52. Stopping all clients.
45

finished in 5.06s, 237409.00 req/s, 2.90GB/s
requests: 1187045 total, 1219813 started, 1187045 done, 1187045 succeeded, 0 failed, 0 errored, 0 timeout
status codes: 1187045 2xx, 0 3xx, 0 4xx, 0 5xx
traffic: 14.52GB (15591269497) total, 108.09MB (113339433) headers (space savings 39.51%), 14.38GB (15440827329) data
                     min         max         mean         sd        +/- sd
time for request:       68us       1.45s    124.19ms    278.79ms    88.05%
time for connect:     4.35ms    125.52ms     55.39ms     33.65ms    56.64%
time to 1st byte:     7.17ms    307.59ms    139.82ms     57.83ms    69.34%
req/s           :     158.16      343.16      231.79       23.02    79.69%
[info] CPU 5520.1% | Mem 5.6GiB
[info]   server: 2530% 4.0GiB | proxy: 2990% 1.7GiB

[run 3/3]
starting benchmark...
.
16Main benchmark duration is started for thread #.
3.
progress: Warm-up phase is over for thread #Main benchmark duration is started for thread #93% of clients started
60.
36.

13Main benchmark duration is started for thread #25.
.
TLS Protocol: TLSv1.3
Cipher: TLS_AES_128_GCM_SHA256
Server Temp Key: X25519 253 bits
Application protocol: h2
27. Stopping all clients.

finished in 5.07s, 254926.80 req/s, 3.11GB/s
requests: 1274634 total, 1307402 started, 1274634 done, 1274634 succeeded, 0 failed, 0 errored, 0 timeout
status codes: 1274636 2xx, 0 3xx, 0 4xx, 0 5xx
traffic: 15.57GB (16716099209) total, 115.96MB (121592722) headers (space savings 39.52%), 15.42GB (16554684186) data
                     min         max         mean         sd        +/- sd
time for request:       68us       1.47s    115.06ms    255.63ms    88.03%
time for connect:     3.60ms    122.92ms     54.53ms     33.80ms    56.05%
time to 1st byte:     7.86ms    328.37ms    135.71ms     57.95ms    71.09%
req/s           :     148.97      489.53      248.90       33.91    83.30%
[info] CPU 5289.2% | Mem 5.5GiB
[info]   server: 2383% 3.8GiB | proxy: 2906% 1.7GiB

=== Best: 251407 req/s (CPU: 5289.2%, Mem: 5.5GiB) ===
[info] saved results/gateway-64/1024/morojs.json
[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/results/morojs.json - 2 new, 37 total
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/current.json
[info] done
httparena-postgres
[info] restoring loopback MTU to 65536

@M-Chris

M-Chris commented Oct 30, 2026

Copy link
Copy Markdown
Contributor Author

/benchmark -f morojs --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 Results

Framework: morojs | Test: all tests

Test Conn RPS Rate CPU/req p99 p99.9 CPU Mem Δ RPS Δ Mem
baseline 4096 2,453,017 — — — — 6446.2% 8.6GiB +11.3% +115.0%
pipelined 4096 37,432,140 — — — — 6671.5% 8.2GiB -0.6% +110.3%
limited-conn 4096 1,979,524 — — — — 6546.6% 8.3GiB +5.0% +107.5%
json-comp 4096 352,587 — — — — 6262.7% 12.8GiB +139.7% +43.8%
json-comp 16384 350,590 — — — — 6230.2% 14.0GiB +170.0% +19.7%
json-tls 4096 921,456 — — — — 6599.8% 9.2GiB +9.1% +119.0%
8gbit 512 49,365 0.9873 69.57us 155.0us 4410.0us 312.5% 9.4GiB ~0% +129.3%
static-tls 1024 362,561 — — — — 6457.5% 8.7GiB +411.3% +97.7%
async-db 1024 206,427 — — — — 5491.8% 9.0GiB +6.9% +83.7%
fortunes 1024 63,367 — — — — 6444.3% 9.8GiB +2.8% +60.7%
baseline-h2 256 797,091 — — — — 6360.7% 13.0GiB NEW NEW
baseline-h2 1024 732,336 — — — — 6322.4% 13.9GiB NEW NEW
static-h2 256 459,314 — — — — 6469.2% 13.5GiB NEW NEW
static-h2 1024 406,857 — — — — 6473.7% 14.8GiB NEW NEW
baseline-h2c 256 868,928 — — — — 6386.2% 12.9GiB NEW NEW
baseline-h2c 1024 839,683 — — — — 6404.7% 13.1GiB NEW NEW
baseline-h2c 4096 806,745 — — — — 6246.0% 13.9GiB NEW NEW
json-h2c 1024 725,207 — — — — 6461.9% 13.3GiB NEW NEW
json-h2c 4096 634,776 — — — — 6399.3% 13.0GiB NEW NEW
gateway-64 512 222,211 — — — — 4674.0% 4.9GiB +69.0% +6.5%
gateway-64 1024 222,219 — — — — 4622.5% 5.4GiB +68.3% -12.9%
gateway-h3 64 82,531 — — — — 3666.9% 2.7GiB +1.5% +68.8%
gateway-h3 256 59,703 — — — — 2788.2% 3.7GiB +1.3% +48.0%
production-stack 256 121,822 — — — — 2779.5% 3.3GiB +0.8% +37.5%
production-stack 1024 109,130 — — — — 2931.0% 4.0GiB +2.5% +29.0%
echo-ws 512 3,496,486 — — — — 6396.1% 8.0GiB +3.4% +110.5%
echo-ws 4096 3,557,222 — — — — 6576.8% 8.3GiB +3.2% +112.8%
echo-ws 16384 3,225,243 — — — — 6439.5% 8.5GiB +2.9% +107.3%
echo-ws-pipeline 512 21,686,435 — — — — 6835.2% 8.3GiB +404.2% +112.8%
echo-ws-pipeline 4096 21,748,934 — — — — 6774.2% 8.3GiB +390.5% +107.5%
echo-ws-pipeline 16384 21,011,769 — — — — 6349.4% 8.3GiB +386.9% +97.6%
echo-ws-limited 512 1,905,925 — — — — 5625.7% 8.5GiB +13.1% +97.7%
echo-ws-limited 4096 2,358,327 — — — — 6121.2% 8.6GiB +17.5% +68.6%
latency-1m 1024 997,623 0.9976 28.40us 214.0us 5318.0us 3117.9% 8.2GiB ~0% +110.3%
latency-10k 1024 9,982 0.9982 33.03us 115.0us 917.0us 31.2% 7.9GiB ~0% +119.4%
latency-500k-8cpu 1024 396,946 0.7939 ⚠️ 20.10us 5031936.0us 5404672.0us 790.6% 1.1GiB +0.1% +128.0%
async 32000 2,289,908 — — — — 5936.3% 9.9GiB +15.2% +110.6%

Composite score, main against this run, in the board's default view:

Family main this run Δ
HTTP/1.1 5524.8 (#15 of 102) 6287.6 (#8 of 102) +762.8
HTTP/2 - 918.0 (#17 of 36) -
Gateway 1836.8 (#5 of 9) 2188.2 (#4 of 9) +351.4
WebSocket 1694.0 (#10 of 35) 2152.9 (#7 of 35) +458.9

The results on main were measured in another session, so a few points up or down can be the machine and not the change.

Full log
  "duration_s": 20.002,
  "requests": 199591,
  "bytes": 23352147,
  "achieved_rate": 9978.38,
  "target_rate": 10000,
  "target_rate_end": 10000,
  "rate_ratio": 0.9978,
  "bytes_per_sec": 1167470.28,
  "error_rate": 0.000000,
  "max_schedule_lag_us": 0,
  "latency_us": {
    "min": 36, "mean": 84.2, "stdev": 651.9, "max": 48799,
    "p50": 63, "p75": 71, "p90": 90, "p99": 115, "p99_9": 3669, "p99_99": 37840
  },
  "status_codes": { "1xx": 0, "2xx": 199591, "3xx": 0, "4xx": 0, "5xx": 0 },
  "errors": { "connect": 0, "read": 0, "write": 0, "timeout": 0, "deadline": 0, "non_2xx_3xx": 0 },
  "latency_histogram": "HISTFAAAAkB4nC1RXUgUURS+95s7O3N3dtXdSYdNaS1NrbTVWgkzsCLxKUKCSiIIn4KgAumlHsxYtCCstIQgNtsH8aFosx4iJHoQs7CeQiIWCZGIKJICCR+Wvhmbw7nn557vnPPdqcqMukLgqVj/jP9WBsHokOhYWU90QZQ0n87JG1iSk5hD3pg0P+q8u9I03124OHFdZkbkyLCcH5Srl0fOzvaO945dyF66NiBfZ+Rg/4++3Jni0YXO6faV9Fjzt9Ti9pm6Yu33TYsbP1U82vAitlzy2Vl1suFpfUXn7YI1Y02FPpjZ0Jq5potlf72XFe9iS/Hl+GzpQuSL80pfDf8O552i/mrnQvfNrJowCriDW8hgTk7J53JYjsuMPHds38HGusaqdEN17c7mE4f2p9MNe3dtqa6ORMK2itsoiZTFVSislLKVHbJDSgACUTgwYSBG30Apz3sSSXTgjYVT0HgSxk2JBB5KpPBMoh8DEhYeS9yVuC3xUxE6pHAefwz8ksBugmLw0BrIHoqJI4iqFrZP8LYNLk5S3wLvJXrQheP+hBR2gJ5AOdEJqsv6rcQeJtpH+vFmWkHPP00unkC58nwWDoe6TLkcp2k1DvBsZwH7uZQaWKqGicoAbwSkK5XfpymIoqgnK4tzLT7CupeieIw0UY7ic7UCLHWpHkGComlNsCYZPGWwiyC4LbjRJOCrEQiXVw62Ba0Fs0n24VpooeKBJryP2o16VlkBeY8LC+LKg+Y+ZUF+USI8In22/gP38D/9A4Uld+c="
}
[info] CPU 32.2% | Mem 7.9GiB
[info] run 2 wins on score

=== Best: 9982 req/s (CPU: 31.2%, Mem: 7.9GiB) ===
[info] exact CPU: 6.59 core-seconds | 33.026 us/req
=== Fixed-rate: cpu/req 33.03us | p99 115.0us | p99.9 917.0us | rate_ratio 0.9982 ===
[info] saved results/latency-10k/1024/morojs.json
httparena-bench-morojs
httparena-bench-morojs

==============================================
=== morojs / latency-500k-8cpu / 1024c (tool=zrk) ===
==============================================
[info] waiting for server...
[info] server ready

[run 1/3]
{
  "zrk_version": "2.3.0",
  "target": { "url": "http://localhost:8080/baseline11?a=1&b=2", "method": "GET" },
  "config": { "connections": 1024, "launched": 1024, "duration_s": 20.000, "closed": false, "target_rate": 500000, "timeout_ms": 2000, "deadline_ms": 0, "deadline_abort": false, "record_timeouts": true },
  "duration_s": 20.005,
  "requests": 7910341,
  "bytes": 925509897,
  "achieved_rate": 395421.28,
  "target_rate": 500000,
  "target_rate_end": 500000,
  "rate_ratio": 0.7908,
  "bytes_per_sec": 46264289.72,
  "error_rate": 0.000000,
  "max_schedule_lag_us": 6131245,
  "latency_us": {
    "min": 87, "mean": 2072637.2, "stdev": 1314675.3, "max": 6135807,
    "p50": 1888768, "p75": 3038208, "p90": 3963904, "p99": 5310464, "p99_9": 5715968, "p99_99": 5945344
  },
  "status_codes": { "1xx": 0, "2xx": 7910341, "3xx": 0, "4xx": 0, "5xx": 0 },
  "errors": { "connect": 0, "read": 0, "write": 0, "timeout": 0, "deadline": 0, "non_2xx_3xx": 0 },
  "latency_histogram": "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"
}
[info] CPU 814.2% | Mem 1.1GiB

[run 2/3]
{
  "zrk_version": "2.3.0",
  "target": { "url": "http://localhost:8080/baseline11?a=1&b=2", "method": "GET" },
  "config": { "connections": 1024, "launched": 1024, "duration_s": 20.000, "closed": false, "target_rate": 500000, "timeout_ms": 2000, "deadline_ms": 0, "deadline_abort": false, "record_timeouts": true },
  "duration_s": 20.007,
  "requests": 7941790,
  "bytes": 929189430,
  "achieved_rate": 396945.96,
  "target_rate": 500000,
  "target_rate_end": 500000,
  "rate_ratio": 0.7939,
  "bytes_per_sec": 46442677.67,
  "error_rate": 0.000000,
  "max_schedule_lag_us": 5813040,
  "latency_us": {
    "min": 41, "mean": 1999244.6, "stdev": 1339622.9, "max": 5816319,
    "p50": 1819136, "p75": 3025920, "p90": 3943424, "p99": 5031936, "p99_9": 5404672, "p99_99": 5646336
  },
  "status_codes": { "1xx": 0, "2xx": 7941790, "3xx": 0, "4xx": 0, "5xx": 0 },
  "errors": { "connect": 0, "read": 0, "write": 0, "timeout": 0, "deadline": 0, "non_2xx_3xx": 0 },
  "latency_histogram": "HISTFAAAMRN4nE2cD0hj97bvNe7YJJPx2B2fV5OMnc4xtqfjtD0mDoOIT0RExCc+kWEYSjmUUg6Xw+VwuFwuh1JExCciIl6REEQkhCAhhCBBgogEEZEQgoiIiIhIEBEREZ+IiLzPWnF6X/fJ3r8/6893fddav73n0Kl35L9cJSX/6/+WFP8pe3qW6uS//k/J/7wqLvxvS5lhMcothqW8pNzBk5uN/1XKrbzCaXMYhsVZ7jAsDsPGbnmFRSRtDovBRrnFapQY1uK4xFKidpiVWyyWEqOMu4zLreVMZM2wiLsSQ/YQt4iYPviV2NjUufGZzEUb6RJDBQyLlafxu7TYLyobhijL/8osn32S0AWAsYKizq2KUC+rUVwQP89UAz+WP7CC7PMnUEWrn1meG0C2YEsAWcWtnY3nFll4bnlWRPMUjxpn+sziMp4XIVmKhp8ZdpkI2bVq17Ci80zMfS4gFYSG/szypUVk/8DPjttnzJ4zE2I+F9XnbBgsP8cIQys6SFpcXBLQZyLxJ0Vb8mRWUBsStlVo/VyIAkcxPNkvA4pLgJdgh+fnqvEHdp8ZEiSh2IuRSZjW8rIneHoTGss0yv+OokyJLymGJpuuYjpV4DPhuVxiUI8UjQobT5QbRdIkd4bqCr9lxdp5uuwytGpFWItJewpXCC3C1AXF8JnmRhWeq2/Zeq5WBJfoFANUOIbyYfkfulzMj6pbP5H5BOP/K5EyQ6y64EqLRADUWqTGxOEfjKK5EvVQVKJ2DKmf54Yi1uKzF4tLMq+8SN59ln8p1rGr6OvzIh66SYU17k+4rBKO+rJIYT21iVSMBPeEWDYtUnDFNJRpnf2LSHwKDMYsNqOYX5F3yebnKvlM7ZconM9gtbwIoMiuUVL+RMdTng3l3vJ7Aos0UmhP3apbZdok6k6bVTeLO59qwWqoJjLGU0hSCBwW5Z8OC/VWPCUMdVNWlNDgPrWgRdEq0CI8Q/vcUjyijKcTwAAejVL+O/yyYiWVPbmhaLVqnurc0BPEeIJa9nvhlTxVtTan8VQr2mpWFS57ypjWurjDm4IoL3bSJ84+s33GCfDfR6SEJ4eRHLifVsqeXBsaiJQv51y5LNjKJBR0HUbxUJKTV0tHTEhzWfRALbJYbv3EuMWwPx3TQpCYLC+CKnaYUKQzKfryIjvFhU9tUuxeEmqUl0mblxfz/yl9lmJSBKrYekposd8+1YrwVyLZKNE0F1uieKJaiv4sjuKRrP2plWhIQE91YujMeCoPi6S/6JOwHXCqIuW/J8t4KlDeURoskH9PVFm5rXhEPvEh1SrlVjwHeAGWW2yiZDfKjc/Eq7SyUTxJ1Itgs+lQXTrEuCjYZF+SZMi71QFLbGmKS8oNW7loKkfMeO1qKEWT8kp1PFWtgeRTgJZyG1bEnFS3uizRuMUI7z59uetrWNrBEMnyYg3IKxoyHdxLxKxmDBXbp6qT175DnJRrhZUIOMEl2xqGYTNUXfIl6oJBIrPJmqHQDVEWPypbUuxZi3rTbwcBbGgPIvSpFo1iW5TZDH3Lwwv+cFL+e3opMYIsL7EJX04iKSuXI47zocRmK36KlJeLvE05KlGiYIpBuZ6UZY4yLfKiY+KxkddyxaBcKBvyXVMm/JVrblXW9ung0WpialP2jGK9F6FLjfC1VKKqGr/I2wBlK5O4tEMNh55PEkDRtE19lEmOiv3AkLANDV3qtbzcoUObAoRNBWYpklRkyqYMgc3J60LKR9MtH3r63cQRYRTT6dDKLi9WtEMhKG8iC1C+yoReQ5iWQiXdkslicJqjcoeYoxpEtFyEocVZUQRS7L9PR025lGPxVJFvTvrGIW8EJ9aFPMcnud8ptNpEqUisHGGfIkDEJnRq1RXrSM9RQ79z0JHzQDgu104oHt6CzNDUihNhw6KfqCVF11qhNiWiREtZLWl7Kb7ikaLvR31/IGxUGI4Kw+m0lDiVNdniW9lZLDbDKQw7ix3srDAhqtxhI1oKU+BK0mwOqVInI0elQ1bKnVoqYo4heZTUl0uLOGxO1mxOwyH50fgkEG07G8BxRRg2qXbwO21CiNwpaDlYOGIoUltlSTFJNpt+zhtOh+EUbyYt4ygm1lleIeUjUtBcYSuXkJwOjDG2OTFQ6RSflRQetisqBY7DUSQaG+UOPDmNSifB2lDkVyJhYFaiLXFUEqrNRjiVTPmjRWWFdK8NFpw4ryImIUOcGTiuqHI4y52sGBWYkj9+wIOzUgwIJ/KPzayosFSaNZYKPDkrbE6Hw2GrlJtZ6cBOeRWcOVAqr3RXOXHsqHE6zYrKSsNhuvHgsFU4KyqAU2mYTjdeq0yzssJZ6bVViZzpkBuuTNNZ5fayVlFjVhpVjooKZ1V1JYYqyivrqqoqa0BSU2HWVFa4HQ6zpsqsc1dBQ5XXLK+uNiuqa6qr3JVmNfLV/M9d53a+dKLkqK4wK7wmXqvdld6q6vpKs6rKrHBU1lXzT5WzylHFo9JZUeeu9povkQaRu9p0u6urTK+7pqLKrHJWeJ01QDErq8xKp7eioqKqylHtRc3rrHxZ5a2pdle7vWZ1VUWF26w2a9x1ZhXqlcA1qx3VLx3uKuw5vZUVAKow3a9qzAZnxSsbbqoh6ZW3ipirKqoqzGpvhbeiqg7xmpfempdm9cvKmmqHt4btVw58vGRgVlfX4L6m+mUVBFU1VFdUOSvhAdrqaqpeVTqr6hk7qyrdoMBrnVnjNN1mfYW7rrrSWV35LVDd9V7Tab6sf1UtzurclTyw6oWUipeNFU5i8da4X9bUOIu81pmVX1d6q2sqKISvve6KGjcZqPS+lFhr6mqQqfHWeV+53e46b119ZXVdTXW1u55IwFD10m26vd7K6hoCr6qu8zZUm3XVDdWVL71eGH/FPzwrzbq6lw0I1tS9aqiqagy8q+no6W7se9va9P23b1u+7W989c03XW/fNTU1tr7q6Bho+abxZcvbt+2dre3v3rV3Nrb0db5/1dQX6Gkc7GxqaGps+Pbd23dvW1o6Ax2d7a3vAh0DbZ0/dbS+bWxrbevs7W5p/7b1Xeu33f1tne/aW9696+hr6wy0f2hrC7R19HR1tPd97P36+5b+ptbOt4Nt7R2N3d+3fd/5oX3A3dvb3fqxq77/+97en9p6f2rpau0dfNfW0xdo7ejsb2v9vutdd39r1+BPbR2DPR0fW7o6Bt9929HR39be29ba393VNzDQ19/x7ufOtp6utoHudz1t7V1dvW0dHwe7+gc6Wvpa2z42tb1v+dDz/mNX6/vujv7et319H77vxEKgo72jbfBD97uu970d3b3dnX0fWvp7O7t6+n/pb+ns7Oke6Gzvau8ZbOnu6uj82Nv57kN3X287EHrbW35q5/51zw+DXd2d7YMtH9s6ut/2f2jrG+zrGRxo7+r+YbDjfXtbd9u375r6Orvfvws0/dLe9+FjT29fX09nV38rEfT2dfa19nZ1fvjQ1d7d2d3R2dna+vfO3o7271sG/9rZ39o3gHB3W1vTh7fdvf0t7zu7fuwb6Gkf6Gzt7+hq63zf09LX1hUYHBzs7R1ogaT+ztY24Ha873kLi50tP/b+pX2gPdDW19XX3979w0Bb70BX99sf3r7t//Fd1+DbnkBXT0/vx56Bgc4P7/oG+gLv+rt/6upp7Whj/Jf2wbae3q6+nv7Az29bP3Z2DXT09HW9H+ju7cNbx7umH/u7ezt/bCNUKGzp7vypq+tDa097O6J9H/u73/b2d/T0t/X29vQOdnf1vn3f1o+rrh/bPw4E2lp6cNPe/36gtW/ww48971v7oPd9U0vTYMdgb3dHe2f/QF9X58D7zr/2dHe++2HgZ8L6oQdGOtsHPnb29bV3fOho6en4a1tfD/kc6PzY0d/Z9RGqBv+t7ZeeDohr7SSPfe3vO9v7W1o6etv+1vlTS98vH1o6Wgf/0v6h7/v3ba0/9rX9lbocaH3f+Uvf9319nT2973/saunt7On5oRflDmj6sWugtT/Q+ssg2H+goj98aO8d+Lmj6+2gxIrGh8GBH3v7qJOugcDgx+6On6H5h0aI6mv7ob/nh9aW93/t7Hs3+EPvQKDnL+0dHT+2/9wz2N3d0tPf/a/dg/39A3/5of/bv3QOfOzqae+lfPp7ewba2no/9g12/kB5dHV2DHa/7/+5868/9fW+7/m5K/A3BLtg7B8t3b0f29sGBgfhufPfezoGf2gZ+NDT09E32PXTYGvXX3r6On4e6G7v6ewc/PFtd9PALxOlkdL50iC/UGmmdLI0VhrmHiqd4Sc7f18qTZYulE4xnS5dZGGRZ4LtcGmc0TQKM1xTyGygOME4ydow82nMitwi89nSPPIyH0f7nzPYHi5dZnmWzXlmCQSDpWuYCCIY4hJUgmGBZ5JZHEPB0mjpCLIrXBHmM6UprES4pktHcR4vXceerIyit4z+KGvynEArwzWFfq70twQbIUUW0dAjuFhSsQgKszznMbnAWOANqxFBP6Lw5tSl7IwBaA5bs6WrzCYxn0E6xWqQ/f+cYXlO2RTBFUSEkH8usDeFxCz3tdJ06a9TrAoTISU3zOIE80VcjaARYzbGXFgT96BfZXEIg3OgHtYNsTXLygwmQkrhKMITpZvIhJW2FBL/IaBlYRi3gk74lVRNahgz3KfUY1yNzmEgrLmYhyCRmEN6nrW/z2nRJBBYLv3HJoM4qQ1qFoTK3+YxIgkUVv8m4KSMFpGbA6Tk/de4OhvhF9O6SSjyCFhlZQztFOuLpf9Y5zGM/rQmIKH1IuzMshJlT/AtsFNMjtRRWKs4yBUBlfA6oggSrAqWCS3bKUW8guxvEwAXKia1UOYUQZTtIU3HcKnUyygr0xiJ4uQ/x7EZ1maIaDJDLAsdwwQ8xOp/TDKU6koplFXoHsPuOONfxxlMqrsI3keVpGLuf5VSn9INSXkx5AnE4xhPKxtTimFG5ZZQTjGWVhHJv08jFNU4pYijCECfxCQFNspPXCe1yTe5S9OMaYONKfyoEilBzZf+FgXRZvGR0rQHn2pf2mwBb7NazL9OsyS5kB5OYGJIhce1fqTLQ1pxcp4EQbeozSXupTgmtZWEFmmgXyVtC+BLqrdJKquIbU0zM00Uc2AZLf33efpc+moWBWFdCJPCn2B7tfS3SU33nEKa4xfjPgvqFLZGlRoRXgGMHDgzrEjVhUv/ITkZA1tIMUWxlXzqjzBczijmEBJh2nxB07KgVRhHbkK7U+owoprScmmk00iPKCdRRRpkFtIDRvgNa/xhrQZhSODOao2L1SjwksqlHBSjT8dnXHM8p80nR/M/5zUn80pssHRbEyL5/vsUA6EupafPiFqSk2ZBUx9TNDnimdB0irIU2BTy0uNTimJaj7KYFv4ssotIR7UHJ0t/W1DYCe2VKRYySoJ4/y2ui7/9NgUDUhPDylIKIYljCfGIlE9EKYyS6+IRHlJt6Z5phFIaZFShxRTSggKR9vn3qLoMa42to7asHRl84n9aa/FXyfZa6X/GVVKqZeX3WCN6wsb1BJAT6bdF7ZBJPXvkmJKtdWYjIImU/rNY/pNahCG8Soal7dY069Ims+olobmV1wcndUgrLKbJXVTHEt0Ilpe1pqXfiokpdtQiV0TJikDclHZ38didVdOSiMnf0yLNFIR1aQUpIykrOU23LHuWEUvWErcULJOWZcui5YhZ1JLnt8A8ycqlJWxZt6xZNiwhyzHjFHs7rOSY5y2b/NLc09jIsBqxrKK3bDm3JFjNWWLYiFqWWN21rPDMWg64LyJ9X7rHM4XOpmUeuRl8bFvmLNN4WsPTOL5ySKyppVVma2htYCXDKILVEzAe8Muzl0B2BevzzLaQT+ElzMomGrPgTTKKW/axs2J5LN1hLOh2iX+KlSnWC+imFf0Gq7NoC6J1VvKsxUG4wl0sJpHM8RMf2+wOKWMrYM0iv0gMc8yPVWcUtBn2D9hL8rsr3SeyJfCvs36NVgzprGWMlQT+VyxDZRHleg1UMbwtYCeHfohdYVlYSWAxhtYy/heUrwixJEEcZ++YvSM8x8C+rtILXAnFmFV7KSwJU6uW69Jt9CNg2STmVZDFua9iP2oZRmpNOY2imQDnlOUM//NoJFmRehnnuc0zis0NRRLCzjoyQWogrZYX8bmmHGawsYaPFfTXue+DcYF5FBvLyBbU1zKYV8GfUIzFGPfUV5xrV3Euo7mtXoLcj9FdwmYMnYzaHML7HGgXmcXBtMU9qzlZQVYYH2WUR+dY638NqwvILrGWJ5YM+1NlaVYnWFvDf07rXHIvEVyAc5VazRFHQTVXLYfsbOJpgT2pauFlA0QJsid5jml9ZNCZwuMOI4k4Y3koXcf2OEg20I5qrRbAnCCfCSJNaU1v4WFYmZ0mB+f8xL503BrXvEa3ieWUrq9oBSygta7cZ4hE1seIfaRMWBIOd5itaPWltDvPWNvTKgxpFSxp5yTUSuKpgycZ7xBDUDldQnOXyGQmfR1RqTjPHXbmtNYy2sNZNLewn9bxLviFzWndW2H1CLkkedvVil3Be5DVPbhLsybVsM6VhaN10K2gt4iPC+1U4X6Z+Ic1D8JyUusgoZUm8awgF0PqRJkSnPN6qiwoE1lktkArFT2Lxp7W3g5aYcYrnFUZzX9GGZ0gppyeOTFQrLK+TCXflC6gc2i5Q0PiDmqEOX5RrYNN7TfJ1jCzZa3yZexN8dxXLBtEP2650n7cUxY3tMdDIEpq/6T1ZNvRs2JDz58oEjk9q054ziK1qafOita+nCNyIsh5to+eZE9+Q2VBYpGOGYfblJ6REe2MDbQXWZ8C7To7ceJdIZa8nvqj2A8T44GefNPEO4K/A/TSmsMT5gvaxUE9ufe572oFywlyXXqjJ5IwPsFcTq685nQSDTmpovySzCS7ec1BGq9yVu1yaku8GcUieTnSfM0zljdGlPVTrdO4nugJrd9F0Elcki+pxhQ+j3R3EcbEcwLpez2NZuBqn9EGo2NW9xSz1MCensQxrJ8xDykHsnfIbEKrMQXeAgj2wZJCblwzn9SOz2pWpItmQbtsuUEmj+wEDIY1tn0wz4A2w+4cK2F9f6zqWbYB0nk0p/GT1zpd0rNW3qtB7d058K1qhU8R3SxItsjCmdZ+RFeXtQeKFSfnTgwu43hPW4atG8aZ8WAcGFnj2piyJo28MW6dtR4by8w2jDtj1LpqjFgTxoS1YGSYH3Ofs+4YBePIuDLSxg16V0ifobeJpSNjjd8F+7usHaO7bYxZlxiFrDkk8+xts3qHxzW0b5G6NmaNGeuKcaL2g8Y6tnbZ3TLC1seyDFoT1kXj0LjE9xg7l8aesWOcGzm0M9i7Zn7IdY6tJePU2AThNZ6OjCHrGjhGrDEinLSeGIto3BphY9h6hf8TvF0idY/sLVqT1ntsbbB2z++Q2M/AGrKK9CrYxqxb2CoY+/g5wNsDNvL8hqz7IDgCj8zP0dkn/nWuFbDvqMVFRpvsFYwElo/wtYDUsHUeqwVkTrB8Y8ywckjUyzCzg7095gto3RhRdM6QOsTHAXxfgngDT+tGEOlHpK/xNkTcJ+o/ZV2HmUf85YnjDlaT1ltsjFvz2A1bp6xp+D1BcpxsXxsRfKSMhPXSSBLXPj5Grad4yxvT1iEq4QK5beRuDOFAmFsHyZQ1C6otNE7xJDUh9TCq8rusBcl8XvGf8FtDa4/VEbT2QT9BxBl2x60ST0GzsaPs3CEr2cwaMXK5zt6qag5TJUeMJnjuk6UlpIepiF34zGJ3GZYfma1r5WYV1QxP4SGlnsfAVgCLZHaInQdiOGN+wE8QSjVfguRYK2AMzq7xeM7oBr9z1PADfkeso1hKsJKxPoDijhhOVHOX+yk2D+mNY1ZH4PsBX1faDddwdYevO/BuIHdB/KNU1bD1iFlWs/6AtyxoLzQ3eSpHav0WyztUwSGaO+zeILOllveIcB5+HhnfkT1BnwfhGXEuaWVIziapUem8OesFzI9zv1c8d8pYkvwUK3/YKv1xBTen3I+MuEZ1gsa+IZ0YsUp3H2H7nucMnTVhlcosoH+LXEG7fxyMt9qNV8Y81Sf1IB13p1WcYU9wzcPTPvoh5ofsXVDB50jsw8U5LGUYnfOTcyPHfornPtHIvtTNueI+1jNniCpYZZTSvr9EKoenK/ali67xFsabnCp55e4Eb2miPcaWcD1klQjn0RTEuyAPUbtpI03Vx7A4TBRpZNfAOGI9gNEVRSfeN8AqNRq2RunuUavYzmn+NrG3D8pZLOaxEede0NGyjsT7NWgumR2jMwtvGbDNInmGVBZeVrCUJ/vnT/Ue0nrfoC+zmmfpDMmtnA0L2AvRGyta24fY2tHTch/sl6BMILdDTte0qvewJ6fuEWvreJdzTforq3koYCsGhjPwX2NrTTOzbwjP+/RDhPVJq5wDSfQuueSsFa83PDNa6Tvct/CTxt61Mcb9VDiFlyjnzwl+ckRVUFR5LMipncbGrSGn1Dnn3IlWyj5Ibtm5Vh3BNGGd03NFYjs0hBE55U/05HoASRyEK3iTijjGh9iSrJ/ouSRx3ms/ZLik5+NEdUMswnIQ38PgO2NtC6lh3mzzWtvHaG+zcm5IfwvObZ7T5F36R6rrwpCz7UD7YJP9ddakdk/VU1bzsqeI97UCDohvSytJsn0OB+d6rj8iu6pVeqEnQ5y6KjAf5dQ5IlZZK54acr5mdEX6IqLv1Bz2w1RpmEra0/fUKdboKKtkZhX2rkF3YSzYJ+w5+6Nt1H5jv7bl7Un7nH3aLs9h+7p9xj5v37Vv207sUXuctbg9hVTCnraH7cuMp+wL9jX7KpKH9nH7MasFfqv2jH3JHrNfMD62TyL5aL+3pe13tpQ9i+4i9pexdcReAf15PF7Yh9AYcpzhK8RuDo8L9gjyj7Yd+4p9DO+ranWf3Sg6giKBrXV+EbDEkVoH0QMy8/Zz+43tAZsH9jOQJcBxZYs5prFxhv01+559FotHWBoD7Qi+NuxBdON4zIH0TGO4h4E8Hqft18juKOIL5eEan2vIj+Ihy/6h+ljG2jFe15SvtH2L+QV4bm0F7K2yv8R8Ak6PkThGL6JI9niuw1befms/ts04CrZjYsggnwbNJugOiXBJI5/Av8RxbQtjf4HRHHdhNKO5PIXrHN4TWB0iq8e2AyIeBsUsFkaxEIaROZiSLK4Q4bAjzmzUMYKNY/upbQv7K7Aqca7zO8P+Nnozjhss78DOLXvbeDvC5iHs7WJvC40FpI7wtmPfJ49BEBWRHMLIOnjWkEoxSoJkj8wegvAEZMvorMPtJnbGGV3aNrCaBMUE7Md4zmmWJ4lnHMTC5BRXDtsx+x0+IuTh0baJBamsKNYT1MAa67t2WZVqSzFb4VqG2ywIbm1XWA2xe0N+RuHjGJ9htMLsnlIxe4xm7Zf2HaKZZ38enpfAksNrmtrdQT+K/gZS4nkDD9tcCbK8io9bbCWRXtQOuYVZQbzG+JEuEi6uiCaikSZBGkJynvmDPYvvfcY5vAn/e4yyXEG8JOF1Bo0lZTSDxTlk4yBYYjWHzLZmLYyUZGqGvpLMncD2KtFc2c5ZnQTTBPMt/O1gIQ6WCNqHVNa+XWprl6q5Y5ZlZ8Q+7RjHXxq9MYfU9h52445rYjpWZJvsSA/t2c84R+ap/IKOdsjMOHbEk6AssCd4g2DfB4dkKqMdvIX+hMYRZufWdoSOoF7WnC1jZQmepVPGtXryeibsg+0Sixl+G3iTjl2gc7ewtK9xZUGWwtIDVTWm9TWpHXpPZ2yR9ws9T4JwJTVQZEbOoCFshrVLzm0RIt1jZxF+0lxBLB9jZY7xBBFswtMuoxSVcWNbo0dyoBhSZlexkEFjAfzTei5ME9Ww9sUunb7Ifkij27IXbBfIndm2WRUG5bRd1h4PaVzTxHhjiyr6GYnXJqfDvU0qXfpKTtMJKv8M9uTkHIebIY2Ck88mfVo87yN6Tg/RQyvwM8Z+RHs0js04PARhUPppn7FU2iTV8Gib0iwMk9EDauQKHLe2RXSnsBvGspxhcrLE4DqM/BK5WUNjlvuFTU6rcbzO6C9KLJu6Lz2ZwdIpWjm0t/TtEgPnKF5nsTpHVDGk92BlQ98xu3Z5l0iV72JVntIf29rT6+ozr28xOX9W0Umzd2l7xPopq4+c7w9kP839Hg9RPTs3tDflrSDah6CKkb8Q/laxMuVYUK5W7FLxw/zG7GHHg7zXWBVUSeT3tI+SaG+D4wBv0uO7rO5p/0ss8l4t6Il1RvwPWrd5/J/ZN2xyHixwysn7cosrQaWkqMwgXhbQkqh3QXmOfUEjnI06JsD/CNJrbCbJ2TqjBPbunt7CvAVYLRCvvD8jeDvB6wz6BTNr5sxH88y8N0/MbfPUDLGSMvfMIdeI69S8NYddEdea6xKJuGvIFTPz5rxr34y6llzzrjnXsGvW9WDG2B12Jc0t8wgrBXPdXMPKOpbz5iaWp1zTrnHXmXllzmIt47oxx11H5oE5jeUofuawMuq6Mxdcm2iGXNf8bkzxeYLupnnBeBgbY8iOu67MVdejOeNKuJZdU6oNAh2nXGGuGDur5rE56jrA2jF+9s1V88HcUDSP5qF5Z2Zdx+aKa4a4ouilXRPYuGF/D+lx1615jcSBmQBdAb01/GfMXXOH+Hbh5IH9G6ycwdQ5Ua+gMwYrm+DOg3QfDtJEd4XWiTkC8hNzzLVnRllNYW8LeykieOD+AMIzuDpE7soUxBnykCTOc+4neBp13SN7bG65Fl0rrk3XLozGYFtW57FxhMQcPkdhpYDlSdciGDMgWwdxhBw9InsGOpHf5R5z5cjiDJyfoH2EjwmYWCQ/4usAzSxoLrlHYCfkugDzLVm4h5FJVw69WeIdwrfURpic3qr8PLl6wNYRMUXBf2SuEfUeaIkQzSz4cubx54J3Uissp/W3AaYTfN/AQkhZOeFaNZdBJswI73F2TsjQHL4OYSjHfp6K2YD7ba3fHXCPkbU5MnOExYKZZF2shl2C/dAUfoZdO1oD01TJI9buiSsPZxfsTMByDiuPRCvVOEyVh4hzxhWEN6niKaJYwOIIMe8jN0zVDhNNiF65NhOmoBlFS+4jWq/rKhfE6zQsXDC6wPa08ryNnRV278C1A2+H+DiAr232DqiSO+UjgV4BRm+IJQTzqy6RHAf9OWxvmxEylwPFnilys6wfEc8xu1Pglp47QC4L9gL5mwdTAZ6mGR3gIYG1IMweIj+LD6mCTa3GQ/omwqrU+whxz7ji7A+D5pL5DTucDfB6q5W2T/y7jCZcW3ASBs0591vs76N/ieaung3CzL1qHeH90hTepSbv4eGGa91cBM0VCGfpvhuysI3cBVFINUtdXLKbZ2UVjq6YXxD9kbnskurO4ncfzytU1w0MnoE0BuMP6F7Tf5fsDsHQI3xegugaps4+D1KrKdidxkeIOj5Cbxu7J9qL0sdHaO1pdOd4u8fyAnzegiqOtW083IL4DGs32j+jnEVZIltE9xqfi0gc4EO8X3MKhMiB1MEW8RbQWnNJ52bQ2NaKPWVvX6vjwpRzc5UeklNF6vsW/Q09Mx4+L2jeNqmZPJ30SJSHptRwgco+4blphvF7RvwhumkXnTS2z8Ez4RIOT5HY4fwe0xwVTOn1SSxsMR6Cz5wpGVjRapaKm3VJ1ieohmsQSj6n6Y9tGJkggjxIh6i8eapd+F5lf4uVU2xv88yzNuKKcpf3xIPWv2RmD+xXnHxx1xbY5vC0Z0qO1jRDO2ifoi19PoL1IDyPuTKmVGOeeLPgfdROWQHDDLtr8L5FRWXRSRDRDfun5gx+xqmqO6yGqflxfaNInPemdPQ+zEZYu9b83mN7lzeNnHFznHHr8CBvywdT4pRaO2N/n0rbJxsrxCPdJG+uMVjb5yzYgt950G/D/S48SyVnTTkbx/QNs4rUGs8H/MpOgvscGRomsggZScMJPYTUjLkg5yb1sYyuvNvktD005YQ+4ZTjBCKHq/puysDPOhJJtKcVYZj8h8Eop8oyb71zPRmyzGfNrO+mfsgX5572HfPb9q36zutnfUHflG/B91i/WL9WP+Y7qE/65nxn9XFf3rdZP+W7ZRT15esP6/fqR30jvkJ9rj7hu6q/9d3XX9RvYi9b/1A/0hBvOPeN+Y7qg76H+vP6g/p4/bhv0Xdaf1x/U7/hW8FL1Jesn/alfWu+CJLTvtn6ZP1J/YUvhfeH+s36iG8Sm5vIJn0TXJf1I/VLYDqqf/TlfMO+kO+GvQvfLfLDDce+cXA/1m8hfVS/4Fv3Xfk2fce+HaTWGsaQ3PeFfbP4m2mYb7jBU6E+heyFL+GL+eYaUg13IDnwTTZEsX4CGys854gsj5VD3139NmvHvgffPJaSXHMN2w0TeJ9kD558Z9je4znVcODb9d2hn6+PNmz5zuH1sf6u/sB3zd4FFoYaRhuGGyYa0g0xvMcbDrGxDR+XvgyYhxrmGqINs6xu+MYbNpC49I02rPpGiHGdWR7/qYYVdteYx9nNEkEeD/O+iYY8OUmxusDKEvwlfVv4HSeWZc3qNdxcgDWI/hKIJ+A+C5tT+Mv6og37xBABf7Ih44s1UBlEcorXJDpHMLiJjcmGFNFN4mkbC3FkTn3hhjMiSHEdkOcbspyuv/7jyR8fXq38Mfdq49Xuq/Crs1drrxZfPX6582Xhy4lXD1+ufJn9Mvll6Mv9l+cvT14+vky+DL+ceTn9cv7l2RcXXzzW5b+Y/GLhiyFGj3XbX1zVbdcd1p3WLdSd1e282KmL1y3WTXLdvJh/cf9i/cX2i8W64IvDF5kX8ReT/IIvHr2P3nvvg3f3xbn33Jt6Mfbi9MW1d+RF+MXci+iLyIuhF8femRen3qUXu0ieeJPeI2/ae+Xd9Ia9p94x75436I17zzxBb8qb8Ex7Fz2HnjlPjt+SJ+KJeU49Qc+WZ5ZRypPw5D1R7g/uc/eY58STduc9Gc8GsqOesOfWvenecU8jucz+vvvIfele9Jy7I54RbAx5xj2b7gW1e+C+dc+iM+I5RmLDc+FOeQ7dGVYukIi77907nkd3gvm+Zxj5HSyl0Fn0nLnHPbvuSTQ33ElP1j3luXTvusOeK/cpO1eMZzwhfF2AJOtecY+7c+6Cex0s1+68O4xU1i1ez/ARAu+pO+p+RO6K+6N7Fa0d9zYyYfansXXKLAi2dbWXx8qK+wRrq+5Rz4R7Fp0pd5poh9yH7g3GGfeyOwaSJWxfo7vpXmN1k71V9yKcPNSKpVFmy+4lN7G5t9hbZnRVO+EecT/W5kE06Zny7LEzj68oMV1hIeOeIZqz2ofam9q0+6b2VDDXnmIv5I6Aas6dRDaDtwiIzvil3be1Z1iJEc0C6zd4n8XiPLMxj2BadK/XToNqFPQz2Mm4D5CYYzRGDKtYOUR7yn1AfAm4mnIPw96wOw4fS+47nklG63ja47dFjo5AskTMs9iYdAeRX+Q+Df40tuJwIiwsIDcHD5tYXWaUV4YKzLLcp3jm0Aq6Qx6xkWB33j3hiaF3jp1JrhPGKeJKsfdYu0wE5KX2vvauNsx4EU9pLG7AyBxRz8HXCZFMgyxbO8PKSW0EmzHysMLapvscHlbV7iKao0hsw94wUSR4rsDpPUwPYW+emNL4OiAbIThZRmsdlML/Te0Wo00YuKq9ZX1KUYc06jV2Rj1J95AnjM0kka66J1iflGxwLaE9ymqIvW3uC+zc1+5p9oLwGQeT2FhTli5rV5XbGbDMEGcOiRR5isHuNNammW1QOavYKhBPCv0VeD5wH2Mnppzd1Yr2IhHl8bWG3DwZn9faua9NEdkjlZbA5gX7q/hZJt4ceb5mNYT1NLFOwUkOLkawH0NOMCXIbxDeFsE+RyRS2bPsJamvIBph8MdYGeUKsSs1PILnee4h7aht7acVLumBYyJOUJ0J5X7PLflc454Fw7RGlWZ2TpT0DjaPwTikdXATKAQ2ApnAVvNVYLZ5JnAfyAUuAsfcg4Fs4Dww2XwbGGdvJxBvXgtkmyeas4E0Go/+8UCo+YC9RCDOym7gJHDlPwgsBiYC00jfBpKBPFeKvWUsnQZmAvOBEJoLgXP/dSDYPNI82nwXuGEli1QEP4+BueYzNBebrwObPBPNY81zzfugmGnOB9awu9icU9sngSXsZplPIptqPkfmDJ0E+G8Dw80ngQN2Z5tFcrd5l71lfEhsI80LSIeaZ5qniGeG6KebN9BeAe8GFnKBbWImPnBuonfG/IrdXew9BuabhxRbFLvyi3APBWbBdoqN9cBEcwH2QiDfRG+U+zwW50GU01iTrB0GwuDLBrab04EjvN+gWQgkmy+I5hQOtzSS+8A+8o+BQ+zsgfo0cBd4wNsu6xeBTPMOewX21gMx5sL1PbNZottqvsTDARGHsb3cvMTKcWCnOcp9pXmnOdG8BotTzEfJZaw50xxqnuV3iYUrsjzE/QQMCfxeY305MAIS8XIeuPNL/AfEeUBcx3jYQ3ISLlfhUsZX4LwjulGwRogvjY04jMexMRc486cZ3fujRPgAw8uBoUDOn/IfBS78B/5IYCoQ89/49/x3/k1YJd+Ba/8YdtP+C/+5fxqEl+RiiWjjzSl83Ptz2A9Sc6vY24CRJakxfwK+brFwGjjAWgidcermwX/lHwVVLnDrf/QnqfoTyRUWpKKT7ByQyS2yRU0Ry0wgSr5XyFEeyxniCpO/W6SlfogLfA/YP/TvID0BHzF0xwJjRAfP+MmS+2TzOjnb1So5D6RhfbQ5ifSJPw7qfWxEuSSqcyJZ57rFb4pqWGX/GFSbIIziNQXeHLNz0F6iOUXOkrC00vxA5ySokm3WZ5ozYM3hcRLbWWzGYXAbbHFFOCKYyMUlMrPsCxc7eDgmw9JTj/6FgHShrJz4g4Ebv0itwsAattaUoU14eKA2N9E4xc4V9tPICH97SM6T7XEqaT0w1nyE3Fzzo/+YbO+zu4tnIoTdR/8yfI1i6ziw1Cy9JzyfoJMhv1vYW26ebk7TU6tITSN1Q83E/Wf+k6aM/75ppynf9Pjn+J8jfy58P/Hn4J+T34e+X/o+9d3ld4Xvtr6Lfhf/buj74e8mvtv69vHb8LcXb3a+zb65eLP0ZvNN4U3izUlj5k3kzeibiTfnjaeNM2/uG3cbrxv3G9calxrH3xw3HjRuNcbfrL9Zbgy/iTCLvJl6s/LmqnH4zUVjsvGocbtxvPGi8bBxnfFyYw6t09cPr2ONG41rr29fH70+fT3cePU68nr59c7rE9YPX9+/nn99+frm9dnrxOur12ONkcZ5tKcbb1/fvR5tHMFK4fUcq9nGaONo4/HrGfbirw9eh19vf7P4TfCb8T/dfL3y9eVXV1/lvj76qvBV/qvYV4cNuw0HDbmGE/70s82fxXbqz/neDv8x+sfMq3O+rYe+vOG7OvZy9WXk5cMXN18E+bbe/yLDF3WO7+jzuqW65bpo3RnfzqcvbvlqvuObeezFgXeKr+Nz7yHXpneX7+E7z4I34r33hLxXnju+gjPeIe+Ut+C59Bx5Fr3nnnXPA+Nxr8yvGe15Fj1T3kNGYVYfPaPebb6Wh707nnNP1rPKt/EuX827PON88Y6xd+mOe7Y9C3wdj/AVfckbctxzxJfeDN/FIWQnPHd8aWb5ir7iq/aOL8sH3ov3yO3xNjyWbzDsxNzyRpavlgPexjm+KE54316xH+cLIs7aA29d+R7ku7Z2nHuCFfmiyeobdpw34zSjcd66Mzyv+N57rJ1kdlwrX5MHfIOM8Hae5E097L6o3WU1y0++fAq157W3tVt8p8awOsR1w/iaL4lNNG94s9/VjvCGlrf6NDaua1drC7V7tWl2r2s3eOZrd2pztYf8VvkC28fyAbM0zzzebmo3a5O1KdY2ajfdOb7QTmqv8HmFlXuQRPS7VKyvu1f5Dj4E1yFffBe1x7VnWM7XrtRe1mbAeovXR3zc1Q77j5oi/rR/r+m2adwf9if8c/4c5++w/9i/wujCP899w1/wz3Jd+iPsTfmX/IdNtzzXmi6adpAb8gf9D/4op+s+ti79m/4Mp8iw/xq9RX+cEzLlnwuM+fNI3jQdIHPsP2g69l83PTYt+S+azv1r/kLTvp6lcU76e/80SDi5m4J/Xv7z6XeX3ybe3DWOvgk2Hr0++yb0zdqftv409Kfgnx6/Pvv69OvM16mvZ76+/mqb67Jh56vjr+a/Gv5q/aslnuMNpw1LDVcN+1yFhnH+tL3VMPzVZsM0f26P8OfrpYYdrpOGTMODb4c/W0/wp++F+vCro5d7X8S4pvhzZr7u/MWR95g/A955zqjWBc+mZ9KzzXdggW+ubb6vlvgeXKJOZqmlU6rpSivqsZZv1ZrdmrV/Ga/O8P99hc27z9Ofhz6/rjyvnPl8qjJRefmHkcqJytM/5CpOKhIVsYpIxWhFqOLh+ePzg+ep55nno8/jz8PPF54vPb933juv+YWerz6PPB9+Hnp+5px5Hnx+6Zx4fuPccz44z/ntOk+Q2XMeOwvOfeeGM+c8dO44x57vOE+dK84MuzFn2hl1TjgXnaPOcee08/JZ1Bl0DulsmFmMtbDz4Nm48/FZ4dmEc+3ZJdf6sxOu9WfBZ2fPdp7lGeeebTPKsnf97PDZuX3OkbbvfHZlXbJu8G+8Xcq/I2XkyxJlobLRshv+/daE/nvV96V3pef6NxmX9a8mxfTvTS7q3zuUv4O1qH8pM6p/jSiqf3lokb/DMsTfcpG/tDdU+u//+Os//vbPv/3rTz//+m9/+9df/vbLx8EB/sLv22+/bfj66zr+Gwj8BxjkP4fAoHjZGP4/3MLpEw=="
}
[info] CPU 790.6% | Mem 1.1GiB

[run 3/3]
{
  "zrk_version": "2.3.0",
  "target": { "url": "http://localhost:8080/baseline11?a=1&b=2", "method": "GET" },
  "config": { "connections": 1024, "launched": 1024, "duration_s": 20.000, "closed": false, "target_rate": 500000, "timeout_ms": 2000, "deadline_ms": 0, "deadline_abort": false, "record_timeouts": true },
  "duration_s": 20.007,
  "requests": 7939331,
  "bytes": 928901727,
  "achieved_rate": 396825.69,
  "target_rate": 500000,
  "target_rate_end": 500000,
  "rate_ratio": 0.7937,
  "bytes_per_sec": 46428606.12,
  "error_rate": 0.000000,
  "max_schedule_lag_us": 7040367,
  "latency_us": {
    "min": 41, "mean": 1978694.5, "stdev": 1379176.0, "max": 7045119,
    "p50": 1763840, "p75": 2798592, "p90": 3863552, "p99": 6158336, "p99_9": 6645760, "p99_99": 6875136
  },
  "status_codes": { "1xx": 0, "2xx": 7939331, "3xx": 0, "4xx": 0, "5xx": 0 },
  "errors": { "connect": 0, "read": 0, "write": 0, "timeout": 0, "deadline": 0, "non_2xx_3xx": 0 },
  "latency_histogram": "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"
}
[info] CPU 790.5% | Mem 1.1GiB
[info] run 2 wins on score

=== Best: 396946 req/s (CPU: 790.6%, Mem: 1.1GiB) ===
[info] exact CPU: 159.61 core-seconds | 20.098 us/req
=== Fixed-rate: cpu/req 20.10us | p99 5031936.0us | p99.9 5404672.0us | rate_ratio 0.7939 ===
[warn] offered rate fell short: rate_ratio=0.7939 (target 500000/s)
[warn]   the CPU number is not comparable with runs that held the rate
[info] saved results/latency-500k-8cpu/1024/morojs.json
httparena-bench-morojs
httparena-bench-morojs

==============================================
=== morojs / async / 32000c (tool=gcannon) ===
==============================================
[info] waiting for server...
[info] server ready

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


  Thread Stats   Avg      p50      p90      p99    p99.9
    Latency   24.42ms   23.20ms   26.10ms   34.60ms   345.70ms

  13001886 requests in 10.00s, 12969886 responses
  Throughput: 1.30M req/s
  Bandwidth:  145.92MB/s
  Status codes: 2xx=12969886, 3xx=0, 4xx=0, 5xx=0
  Latency samples: 12969886 / 12969886 responses (100.0%)
[info] CPU 2793.3% | Mem 9.1GiB

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


  Thread Stats   Avg      p50      p90      p99    p99.9
    Latency   14.00ms   13.40ms   16.20ms   23.10ms   39.10ms

  22751521 requests in 10.00s, 22719521 responses
  Throughput: 2.27M req/s
  Bandwidth:  255.62MB/s
  Status codes: 2xx=22719521, 3xx=0, 4xx=0, 5xx=0
  Latency samples: 22719521 / 22719521 responses (100.0%)
[info] CPU 6022.1% | Mem 10.0GiB

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


  Thread Stats   Avg      p50      p90      p99    p99.9
    Latency   13.86ms   13.40ms   16.00ms   20.40ms   29.30ms

  22931080 requests in 10.00s, 22899080 responses
  Throughput: 2.29M req/s
  Bandwidth:  257.64MB/s
  Status codes: 2xx=22899080, 3xx=0, 4xx=0, 5xx=0
  Latency samples: 22899080 / 22899080 responses (100.0%)
[info] CPU 5936.3% | Mem 9.9GiB

=== Best: 2289908 req/s (CPU: 5936.3%, Mem: 9.9GiB) ===
[info] input BW: 104.82MB/s (avg template: 48 bytes)
[info] saved results/async/32000/morojs.json
httparena-bench-morojs
httparena-bench-morojs
[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/results/morojs.json - 37 new, 37 total
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/current.json
[info] done
httparena-postgres
[info] restoring loopback MTU to 65536

… the engine's measured serve order

json-comp: the first run on brotli 3 sent the bytes the score wants (1319
per reply) but cost 352K req/s against 483K on gzip 3, because every reply
built and tore down a brotli encoder. MoroJS 1.8.19 keeps one brotli
encoder per setting and resets it between bodies - on the Node 26 the
image ships a reset keeps its quality - so a reply costs the compression
alone: 30 us a body against 45 or more on these bodies. The same cost
decided gateway-64, whose load negotiates brotli through nginx. The route
keeps brotli 3 first, gzip 3 behind it.

gateway-h3 at 256 connections and production-stack at 256 did not move with
the listen backlog: at par at 64 connections, a quarter behind at 256, the
server mostly idle. That is the shape the engine's design notes measured
for its epoll serve order - grouped by peer CPU, which loses about a
quarter at 256 connections to arrival order when every request enters
JavaScript under a peer that oversubscribes its cores - and the engine
ships a measured 'auto' mode for it. The three proxied stacks run the
server with MORO_ENGINE_SERVE_ORDER=auto; the standalone container keeps
the default, where the grouped order wins.

@morojs/engine 1.1.16: wsSend() borrows its payload (the backpressure shed
is queued to a later turn), ASCII text frames arrive as one-byte strings,
and the TLS record buffers are released between records again, since
keeping them moved nothing on the TLS profiles.
@M-Chris

M-Chris commented Oct 30, 2026

Copy link
Copy Markdown
Contributor Author

/benchmark -f morojs --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 Results

Framework: morojs | Test: all tests

Test Conn RPS Rate CPU/req p99 p99.9 CPU Mem Δ RPS Δ Mem
baseline 4096 2,406,514 — — — — 6673.9% 8.5GiB +9.2% +112.5%
pipelined 4096 37,119,811 — — — — 6657.5% 8.2GiB -1.4% +110.3%
limited-conn 4096 2,005,333 — — — — 6541.4% 8.4GiB +6.3% +110.0%
json-comp 4096 370,632 — — — — 6248.6% 9.8GiB +152.0% +10.1%
json-comp 16384 368,110 — — — — 6220.1% 10.2GiB +183.5% -12.8%
json-tls 4096 925,942 — — — — 6611.1% 9.1GiB +9.6% +116.7%
8gbit 512 49,365 0.9873 70.91us 157.0us 2785.0us 323.7% 9.3GiB ~0% +126.8%
static-tls 1024 364,052 — — — — 6433.8% 8.6GiB +413.4% +95.5%
async-db 1024 211,850 — — — — 5644.8% 9.0GiB +9.7% +83.7%
fortunes 1024 62,038 — — — — 6658.7% 10.0GiB +0.6% +63.9%
baseline-h2 256 800,059 — — — — 6355.2% 13.1GiB NEW NEW
baseline-h2 1024 732,628 — — — — 6354.0% 13.8GiB NEW NEW
static-h2 256 451,211 — — — — 6445.2% 13.3GiB NEW NEW
static-h2 1024 408,400 — — — — 6464.8% 14.5GiB NEW NEW
baseline-h2c 256 861,130 — — — — 6386.4% 12.8GiB NEW NEW
baseline-h2c 1024 829,506 — — — — 6424.3% 13.2GiB NEW NEW
baseline-h2c 4096 831,355 — — — — 6291.6% 13.8GiB NEW NEW
json-h2c 1024 739,636 — — — — 6471.0% 13.2GiB NEW NEW
json-h2c 4096 654,131 — — — — 6364.9% 13.0GiB NEW NEW
gateway-64 512 240,870 — — — — 4954.5% 3.8GiB +83.2% -17.4%
gateway-64 1024 230,480 — — — — 4787.8% 4.5GiB +74.6% -27.4%
gateway-h3 64 82,557 — — — — 3460.2% 2.5GiB +1.5% +56.2%
gateway-h3 256 59,392 — — — — 2664.8% 3.4GiB +0.8% +36.0%
production-stack 256 118,211 — — — — 2681.7% 3.2GiB -2.2% +33.3%
production-stack 1024 105,546 — — — — 3037.8% 4.0GiB -0.9% +29.0%
echo-ws 512 3,543,860 — — — — 6548.3% 8.3GiB +4.8% +118.4%
echo-ws 4096 3,612,611 — — — — 6563.0% 8.3GiB +4.8% +112.8%
echo-ws 16384 3,213,209 — — — — 6124.1% 8.3GiB +2.5% +102.4%
echo-ws-pipeline 512 21,264,668 — — — — 6822.3% 8.2GiB +394.4% +110.3%
echo-ws-pipeline 4096 21,388,949 — — — — 6525.9% 8.3GiB +382.4% +107.5%
echo-ws-pipeline 16384 20,501,769 — — — — 6714.8% 8.5GiB +375.1% +102.4%
echo-ws-limited 512 1,902,165 — — — — 5812.6% 8.5GiB +12.9% +97.7%
echo-ws-limited 4096 2,358,823 — — — — 6093.2% 8.6GiB +17.5% +68.6%
latency-1m 1024 997,707 0.9977 27.86us 216.0us 4334.0us 3068.3% 8.1GiB ~0% +107.7%
latency-10k 1024 9,981 0.9981 33.02us 112.0us 178.0us 31.0% 7.8GiB ~0% +116.7%
latency-500k-8cpu 1024 396,137 0.7923 ⚠️ 20.13us 5556224.0us 5998592.0us 790.6% 1.1GiB ~0% +128.0%
async 32000 2,296,906 — — — — 5992.9% 9.9GiB +15.6% +110.6%

Composite score, main against this run, in the board's default view:

Family main this run Δ
HTTP/1.1 5524.8 (#15 of 102) 6334.1 (#8 of 102) +809.2
HTTP/2 - 922.4 (#17 of 36) -
Gateway 1836.8 (#5 of 9) 2220.3 (#4 of 9) +383.5
WebSocket 1694.0 (#10 of 35) 2151.9 (#7 of 35) +458.0

The results on main were measured in another session, so a few points up or down can be the machine and not the change.

Full log
  "duration_s": 20.002,
  "requests": 199607,
  "bytes": 23354019,
  "achieved_rate": 9979.25,
  "target_rate": 10000,
  "target_rate_end": 10000,
  "rate_ratio": 0.9979,
  "bytes_per_sec": 1167572.15,
  "error_rate": 0.000000,
  "max_schedule_lag_us": 0,
  "latency_us": {
    "min": 38, "mean": 81.0, "stdev": 569.3, "max": 40767,
    "p50": 63, "p75": 71, "p90": 90, "p99": 117, "p99_9": 194, "p99_99": 34352
  },
  "status_codes": { "1xx": 0, "2xx": 199607, "3xx": 0, "4xx": 0, "5xx": 0 },
  "errors": { "connect": 0, "read": 0, "write": 0, "timeout": 0, "deadline": 0, "non_2xx_3xx": 0 },
  "latency_histogram": "HISTFAAAAh54nC1PTWgTQRjdeTPJZjdJ17hugyYlTWqVWpJai38UjeBBsUoRrYoXwYMRRMVDsdIipIY0SIXSQihVggQV1CDiyUOoPRQpPRX1EEG0oGjJoebck29Td5iZ73vz3vveRnMztqbhhrb5yf+3aDYzE1q6sQkMmC2J8yNPxbqoYAllueJ9EppObpxbHc5nRb0gShNiNSumR17cXL/2PjN/JzdayopSXuTvL98dz2wMzZ96l64cKvZO9qx1FTtL7cvR2UijterM2b+sanAxOBkY938xZo2ir+Kb0j96G57vnrJvyqq15nfUnZxd3vq7pRT8Zi4YS76HZtV4ZTwzFvS6Z02tyJps4A0KqIlF8UlUxJx4K8auXz197OiBPfuiqfZo6uSFS7fGCuLyzr2pxK5EYEvANAOm16dgKiiloAHQvFLBA1t5NSXhZ2koJBFHN/4AVzCMvwJDyKAN9/BD4PM2Uh5LPPAR9eA18FLAxiOBfuAMj8NUD6ILowjjCNLqBLUxHEQnvgrAoqYbETisON7gwSuMECR2Ew1T7b54wCxtfJdsJW/oRA3ikk5++js8JRd01cG4EZZBDko2xX3cQWKuaIAvx0l30HSwVBIXaerHc+bpwX700m2Q/3CblP7mtrm206yD/DhVIebXiWnM7oayyNLY97F2Bzv4qeODQEbFcZY4YZ0JYiRZFLs5YqTZNGN6N6jTdLboJ5u9H/8AH2VxtQ=="
}
[info] CPU 32.4% | Mem 7.8GiB
[info] run 2 wins on score

=== Best: 9981 req/s (CPU: 31.0%, Mem: 7.8GiB) ===
[info] exact CPU: 6.59 core-seconds | 33.019 us/req
=== Fixed-rate: cpu/req 33.02us | p99 112.0us | p99.9 178.0us | rate_ratio 0.9981 ===
[info] saved results/latency-10k/1024/morojs.json
httparena-bench-morojs
httparena-bench-morojs

==============================================
=== morojs / latency-500k-8cpu / 1024c (tool=zrk) ===
==============================================
[info] waiting for server...
[info] server ready

[run 1/3]
{
  "zrk_version": "2.3.0",
  "target": { "url": "http://localhost:8080/baseline11?a=1&b=2", "method": "GET" },
  "config": { "connections": 1024, "launched": 1024, "duration_s": 20.000, "closed": false, "target_rate": 500000, "timeout_ms": 2000, "deadline_ms": 0, "deadline_abort": false, "record_timeouts": true },
  "duration_s": 20.005,
  "requests": 7856229,
  "bytes": 919178793,
  "achieved_rate": 392714.57,
  "target_rate": 500000,
  "target_rate_end": 500000,
  "rate_ratio": 0.7854,
  "bytes_per_sec": 45947604.94,
  "error_rate": 0.000000,
  "max_schedule_lag_us": 7212139,
  "latency_us": {
    "min": 71, "mean": 2032657.9, "stdev": 1670569.1, "max": 7217151,
    "p50": 1600000, "p75": 3204096, "p90": 4605952, "p99": 6174720, "p99_9": 6633472, "p99_99": 6879232
  },
  "status_codes": { "1xx": 0, "2xx": 7856229, "3xx": 0, "4xx": 0, "5xx": 0 },
  "errors": { "connect": 0, "read": 0, "write": 0, "timeout": 0, "deadline": 0, "non_2xx_3xx": 0 },
  "latency_histogram": "HISTFAAALNd4nE27D2hi2b7nW5pku7du/1SXMal0Ra3q6lxNWZmiKIqm6dfTFP2aQ3NpDj2Hw+XM4TAMj8flcBiGy+W+y8zlICI+EZ/kOeI44oiII5LnE8kTcSQjjoQQREKQTAhBQggiEoKISAgS5H2WfWeYstx77bV+v+/vz/qt3/otNS/8/+7Zkyf/9P978su/pX+8axYP/+7/fPJPx790/F8a7VOtYfl/0eqWP9euab/Uav9X7T+n679qtP9Zq/0PGu3/of1vWu1/0mj/X432/17S/luG/x+NVqf9C+3n2n+v0W5q/6NG+1/eav+J9p/BvaRVtAYGzQA8W9Yta5eWnyw/1WpXtUbGDNqX2hXtE150Q/WEcTroF31fSGJwWQsEDSM9CvcVcBRaT3mG+omgXtJCZ5CeCDq6pBXpCXiLXv4vcVmI0S5glQXqklYMiUFBKdpfLMTChLILIhkiQQXq4vo/YASGIFEWiIJDq5W4C4ELTYUSywt5y8u4EanL0kK2MG7BIEQ/kSS9qjcJmxleFvjc8JG0vKBaSFpeFuMCQbtA1C4JM38B1wq6ZUlYLC0vy8sCQsuwSQvw8rIglJYZEbK4AyFJJglVGX8iLeuFb38ZAwEqmTsw2l9ggFsoLYkx0ASSfqHmsqSXxbNWLzwnzENNLf56wrhMW9Uv6xl9Ii/YBM1C+kJreaHlsgBYFmrT0suSnjvMkmzBIQzoJVUryVohaFmWJK38RFykhaZaVWVEkkCSTVp0krBUkvXA4T8VeFmWgJSemESH1iKESE+ESwB+gnbCuAWgUEwrqdLCNfTLAP+iCQbIwieAgiZmBOWEZ5YX44LsiV4vFEWyfuGsX+ZDL0yFBkvRalmMCUcLa1UsNS2reEFevPQLBy8uC4nYqqK7sGvhMb0YkX65MDdCgyeLSRYzIiZmeTHDCy8L9/6iJDTCH7xE5BNjYi4X8YUtWr24P5HhNonWErYvAkdMoQgMlfaSvAgHk3bhBq1QgfGF9cI0XC4vTAReFv4RTlxeeJRB/S9xCMsy3kSyKhQS2uPHBY6sMkdithbxhnjtkqpldrQLK8TkiBj8xS74nojpXRaxJ4Jn4Uc0WkZ/cUUqIsX/ZREDkmlBJSZueSFdOF4rIgiJehEmkmAXcyjsFSEjTGdG9cuWX5qSeAloINUFpyxbECQLGXphrV54SmsBXa8+UWWkLsLAtG4S69liZZbX1c9Uq+Uz1WLZ1ptsls94li22zyxWq179bJ2XyW43Wdetzs+s1heMqnqLRbWZrLZX1lc2m91kM22YXrzYsFte2F6sOzesG/YN++tX6xu2z9bXN5wb6zaLfcu6xfCrja1l1+uNdYbXndtbO6+3bdsueq3r23brh63P1jc2NrZe2N+tv36lvn712gOZzenybNs8r0xbzq3td1tWGF+57Dsv7K82nJ4t18cXL157dmzb2185X398teH68PqF54PTtQ3pB9vG+pbTad35xvnK6bLbPd+8/iBAXa+/c7l2tl+8ePfB9cO7ra1t186W8/X2jufjtt3lev/uxSe759XOR9Tb2tpBluud5/23Ox9crz59/LCFxFcfP7g8r7e3ne92dr7d/vgabb7b3nrn2fn2m29dX3s8795/3Hn98cX7D6+BWPd8/OaDZ+sdYK6djzv27fcb37l+fPfhHea//vjx2w87Ox+//Wpr5wePa92z7dna+vDtzvuddz98/WHL9eGDc8f18YfXnq/f7Xz4wenc8uAw14d3799tf9j66vX7r7c9rq2vPv366y3PR4/r448fvvK4vv74/t2Hrz56vvrmq29evf/53TvX99/twLLz1YdvXNsfv/76608ftn/46v3Or77+uPXVzvtvwf7O+e67b779/sP79998eP/u2+9/fP/1h++//dU3n97vbH34tPXNp693XJ8+ff+rdx8/ou133/307qevv/rdX7369tMPX/208+273377cfsvv/r1p5++2fn46dvvf/ObH7/+/ttPnh+/++m7T7/+/tc//vTT77756a8+fvfpD59++vH7n79//6vf/vzDb3/9tz//7jc//vyH3//4029/9/u//sNvf/jpt3/1+z/+8S9/+OkPP37/L//0+9/8/Le//tMf/vZ3/9u/+Ku//vW/+M2f/tVf//gvf/u/+zV//jd//JNX8zf/Oqr5/d/9+h/+FNP4NX/8uz9Guf0D/6OalKakCWqKmj1NSBPh9TdBzd/HNXFNXpPRpDUxzZ/+4YixuKapqWj2Nceaa80N1EFNAYoq9IeahiYMRU5zoIlyr8A1oD3QdKFOas41pzxdwb9PuwlqCIkRTUtzqbnT+LXTBU5D0+Ha1tTgbyOhx/NIcwHCGe8H0HKaI02f/r7mFkSf9hi8jsarbfA8hXYGqkBv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"
}
[info] CPU 815.2% | Mem 1.1GiB

[run 2/3]
{
  "zrk_version": "2.3.0",
  "target": { "url": "http://localhost:8080/baseline11?a=1&b=2", "method": "GET" },
  "config": { "connections": 1024, "launched": 1024, "duration_s": 20.000, "closed": false, "target_rate": 500000, "timeout_ms": 2000, "deadline_ms": 0, "deadline_abort": false, "record_timeouts": true },
  "duration_s": 20.007,
  "requests": 7901964,
  "bytes": 924529788,
  "achieved_rate": 394955.83,
  "target_rate": 500000,
  "target_rate_end": 500000,
  "rate_ratio": 0.7899,
  "bytes_per_sec": 46209831.96,
  "error_rate": 0.000000,
  "max_schedule_lag_us": 6065570,
  "latency_us": {
    "min": 41, "mean": 2060112.7, "stdev": 1277077.4, "max": 6070271,
    "p50": 1970688, "p75": 2972672, "p90": 3894272, "p99": 5031936, "p99_9": 5437440, "p99_99": 5744640
  },
  "status_codes": { "1xx": 0, "2xx": 7901964, "3xx": 0, "4xx": 0, "5xx": 0 },
  "errors": { "connect": 0, "read": 0, "write": 0, "timeout": 0, "deadline": 0, "non_2xx_3xx": 0 },
  "latency_histogram": "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"
}
[info] CPU 786.2% | Mem 1.1GiB

[run 3/3]
{
  "zrk_version": "2.3.0",
  "target": { "url": "http://localhost:8080/baseline11?a=1&b=2", "method": "GET" },
  "config": { "connections": 1024, "launched": 1024, "duration_s": 20.000, "closed": false, "target_rate": 500000, "timeout_ms": 2000, "deadline_ms": 0, "deadline_abort": false, "record_timeouts": true },
  "duration_s": 20.007,
  "requests": 7925437,
  "bytes": 927276129,
  "achieved_rate": 396136.56,
  "target_rate": 500000,
  "target_rate_end": 500000,
  "rate_ratio": 0.7923,
  "bytes_per_sec": 46347977.22,
  "error_rate": 0.000000,
  "max_schedule_lag_us": 6382132,
  "latency_us": {
    "min": 42, "mean": 2001803.2, "stdev": 1358842.5, "max": 6385663,
    "p50": 1792512, "p75": 2896896, "p90": 3998720, "p99": 5556224, "p99_9": 5998592, "p99_99": 6219776
  },
  "status_codes": { "1xx": 0, "2xx": 7925437, "3xx": 0, "4xx": 0, "5xx": 0 },
  "errors": { "connect": 0, "read": 0, "write": 0, "timeout": 0, "deadline": 0, "non_2xx_3xx": 0 },
  "latency_histogram": "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"
}
[info] CPU 790.6% | Mem 1.1GiB
[info] run 3 wins on score

=== Best: 396137 req/s (CPU: 790.6%, Mem: 1.1GiB) ===
[info] exact CPU: 159.56 core-seconds | 20.133 us/req
=== Fixed-rate: cpu/req 20.13us | p99 5556224.0us | p99.9 5998592.0us | rate_ratio 0.7923 ===
[warn] offered rate fell short: rate_ratio=0.7923 (target 500000/s)
[warn]   the CPU number is not comparable with runs that held the rate
[info] saved results/latency-500k-8cpu/1024/morojs.json
httparena-bench-morojs
httparena-bench-morojs

==============================================
=== morojs / async / 32000c (tool=gcannon) ===
==============================================
[info] waiting for server...
[info] server ready

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


  Thread Stats   Avg      p50      p90      p99    p99.9
    Latency   61.06ms   60.70ms   123.40ms   130.00ms   535.60ms

  5210179 requests in 10.00s, 5178179 responses
  Throughput: 517.71K req/s
  Bandwidth:  58.26MB/s
  Status codes: 2xx=5178179, 3xx=0, 4xx=0, 5xx=0
  Latency samples: 5178179 / 5178179 responses (100.0%)
[info] CPU 2069.2% | Mem 8.8GiB

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


  Thread Stats   Avg      p50      p90      p99    p99.9
    Latency   13.97ms   13.40ms   16.30ms   22.70ms   32.30ms

  22781410 requests in 10.00s, 22749410 responses
  Throughput: 2.27M req/s
  Bandwidth:  255.96MB/s
  Status codes: 2xx=22749410, 3xx=0, 4xx=0, 5xx=0
  Latency samples: 22749410 / 22749410 responses (100.0%)
[info] CPU 6034.1% | Mem 9.9GiB

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


  Thread Stats   Avg      p50      p90      p99    p99.9
    Latency   13.82ms   13.30ms   16.00ms   20.50ms   28.20ms

  23001065 requests in 10.00s, 22969065 responses
  Throughput: 2.30M req/s
  Bandwidth:  258.43MB/s
  Status codes: 2xx=22969065, 3xx=0, 4xx=0, 5xx=0
  Latency samples: 22969065 / 22969065 responses (100.0%)
[info] CPU 5992.9% | Mem 9.9GiB

=== Best: 2296906 req/s (CPU: 5992.9%, Mem: 9.9GiB) ===
[info] input BW: 105.14MB/s (avg template: 48 bytes)
[info] saved results/async/32000/morojs.json
httparena-bench-morojs
httparena-bench-morojs
[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/results/morojs.json - 37 new, 37 total
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/current.json
[info] done
httparena-postgres
[info] restoring loopback MTU to 65536

@MDA2AV
MDA2AV merged commit 4fcd951 into MDA2AV:main Oct 31, 2026
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