Skip to content

zix http2 entry#990

Merged
MDA2AV merged 5 commits into
MDA2AV:mainfrom
prothegee:zix-http2
Jul 14, 2026
Merged

zix http2 entry#990
MDA2AV merged 5 commits into
MDA2AV:mainfrom
prothegee:zix-http2

Conversation

@prothegee

@prothegee prothegee commented Jul 12, 2026

Copy link
Copy Markdown
Contributor

Description

zix entry for http2 using 0.5.x-rc1

Update:

  • Using dual listener port.

Checklist:

  • /benchmark -f zix-http2
  • /benchmark -f zix-http2 --save

@prothegee

Copy link
Copy Markdown
Contributor Author

/benchmark -f zix-http2

@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: zix-http2 | Test: all tests

Test Conn RPS CPU Mem Δ RPS Δ Mem
baseline-h2 256 14,662,683 3505.2% 117MiB NEW NEW
baseline-h2 1024 14,329,544 3454.3% 158MiB NEW NEW
static-h2 256 1,681,925 5690.2% 223MiB NEW NEW
static-h2 1024 1,656,735 6072.7% 596MiB NEW NEW
baseline-h2c 256 14,661,530 3471.9% 104MiB NEW NEW
baseline-h2c 1024 14,666,422 3417.6% 123MiB NEW NEW
baseline-h2c 4096 13,755,772 3275.7% 204MiB NEW NEW
json-h2c 1024 6,779,973 3648.3% 170MiB NEW NEW
json-h2c 4096 6,736,059 4226.0% 419MiB NEW NEW
Full log
[run 2/3]
starting benchmark...
6.
.
.Warm-up phase is over for thread #Main benchmark duration is started for thread #58.
38.

.
46.
55.
7Main benchmark duration is over for thread #27. Stopping all clients.
. Stopping all clients.Stopped all clients for thread #15

38. Stopping all clients.
38
. Stopping all clients.
41Main benchmark duration is over for thread #59. Stopping all clients.
62Main benchmark duration is over for thread #. Stopping all clients.31. Stopping all clients.
. Stopping all clients.
6. Stopping all clients.
62
2. Stopping all clients.

finished in 5.06s, 6861333.60 req/s, 22.74GB/s
requests: 34306668 total, 34339436 started, 34306668 done, 34306668 succeeded, 0 failed, 0 errored, 0 timeout
status codes: 34306668 2xx, 0 3xx, 0 4xx, 0 5xx
traffic: 113.68GB (122067215020) total, 682.39MB (715538634) headers (space savings 62.56%), 112.44GB (120734100042) data
                     min         max         mean         sd        +/- sd
time for request:      192us     12.05ms      2.40ms       691us    76.89%
time for connect:       23us      1.18ms       429us       233us    62.50%
time to 1st byte:     1.18ms     12.14ms      3.49ms      1.84ms    79.39%
req/s           :    6338.42     7184.46     6698.08      140.50    70.31%
[info] CPU 3648.3% | Mem 170MiB

[run 3/3]
starting benchmark...
.
Application protocol: h2c
.

62.
.
.Main benchmark duration is started for thread #19.

18.
759. Stopping all clients.. Stopping all clients.Main benchmark duration is over for thread #62. Stopping all clients.

7
54. Stopping all clients.



56
45. Stopping all clients.
55. Stopping all clients.
. Stopping all clients.

finished in 5.05s, 6731574.00 req/s, 22.31GB/s
requests: 33657870 total, 33690638 started, 33657870 done, 33657870 succeeded, 0 failed, 0 errored, 0 timeout
status codes: 33657870 2xx, 0 3xx, 0 4xx, 0 5xx
traffic: 111.53GB (119758700684) total, 669.49MB (702006549) headers (space savings 62.56%), 110.32GB (118450796155) data
                     min         max         mean         sd        +/- sd
time for request:      228us     11.36ms      2.44ms       669us    73.59%
time for connect:       19us      1.10ms       416us       224us    63.96%
time to 1st byte:     1.15ms     12.51ms      3.32ms      1.85ms    82.03%
req/s           :    6258.08     6959.82     6571.63      127.09    68.65%
[info] CPU 3569.2% | Mem 172MiB

=== Best: 6779973 req/s (CPU: 3648.3%, Mem: 170MiB) ===
[info] saved results/json-h2c/1024/zix-http2.json
httparena-bench-zix-http2
httparena-bench-zix-http2

==============================================
=== zix-http2 / json-h2c / 4096c (tool=h2load) ===
==============================================
[info] waiting for server...
[info] server ready

[run 1/3]
starting benchmark...
Application protocol: h2c

45.
.Warm-up phase is over for thread #10.

40.
55.
.Main benchmark duration is started for thread #50.

22.
45. Stopping all clients.


finished in 5.11s, 6884252.40 req/s, 22.81GB/s
requests: 34421262 total, 34552334 started, 34421262 done, 34421262 succeeded, 0 failed, 0 errored, 0 timeout
status codes: 34421262 2xx, 0 3xx, 0 4xx, 0 5xx
traffic: 114.05GB (122458238902) total, 684.67MB (717927458) headers (space savings 62.56%), 112.80GB (121120503448) data
                     min         max         mean         sd        +/- sd
time for request:      698us     76.31ms     11.49ms      7.42ms    92.81%
time for connect:       14us      6.86ms      2.33ms      1.77ms    59.25%
time to 1st byte:    26.36ms     82.70ms     58.63ms      8.69ms    75.17%
req/s           :    1602.64     1765.69     1678.20       27.78    65.53%
[info] CPU 4226.0% | Mem 419MiB

[run 2/3]
starting benchmark...
40Main benchmark duration is started for thread #.63
.Warm-up phase is over for thread #60.
.
.Warm-up phase is over for thread #
20Warm-up phase is over for thread #Warm-up phase is over for thread #Main benchmark duration is started for thread #33.
15.
31.
.Warm-up phase is over for thread #24.

23.Warm-up phase is over for thread #.

36.Main benchmark duration is started for thread #23.

36.
41.

Application protocol: Main benchmark duration is started for thread #16.
h2cWarm-up phase is over for thread #
37.
54. Stopping all clients.
60. Stopping all clients.
53. Stopping all clients.

finished in 5.10s, 6748900.60 req/s, 22.36GB/s
requests: 33744503 total, 33875575 started, 33744503 done, 33744503 succeeded, 0 failed, 0 errored, 0 timeout
status codes: 33744503 2xx, 0 3xx, 0 4xx, 0 5xx
traffic: 111.81GB (120050176716) total, 671.21MB (703812129) headers (space savings 62.56%), 110.58GB (118738738253) data
                     min         max         mean         sd        +/- sd
time for request:      382us     45.86ms     10.15ms      2.96ms    84.54%
time for connect:       20us     17.91ms      2.91ms      2.82ms    90.28%
time to 1st byte:     3.33ms     70.83ms     20.33ms     10.47ms    78.03%
req/s           :    1557.89     1743.73     1645.15       31.60    66.38%
[info] CPU 3963.6% | Mem 420MiB

[run 3/3]
starting benchmark...
38.
60.Main benchmark duration is started for thread #31.

.Main benchmark duration is started for thread #25.

63.
27.
.


45. Stopping all clients.

36
. Stopping all clients.Stopped all clients for thread #39

16

finished in 5.07s, 6813847.20 req/s, 22.58GB/s
requests: 34069236 total, 34200308 started, 34069236 done, 34069236 succeeded, 0 failed, 0 errored, 0 timeout
status codes: 34069236 2xx, 0 3xx, 0 4xx, 0 5xx
traffic: 112.88GB (121205758813) total, 677.67MB (710585184) headers (space savings 62.56%), 111.65GB (119881702101) data
                     min         max         mean         sd        +/- sd
time for request:      432us     38.55ms     10.41ms      3.39ms    82.20%
time for connect:       15us     10.11ms      2.82ms      2.05ms    61.60%
time to 1st byte:     3.23ms     39.99ms     18.02ms      6.10ms    67.33%
req/s           :    1567.02     1745.58     1661.03       35.80    61.40%
[info] CPU 4283.3% | Mem 436MiB

=== Best: 6736059 req/s (CPU: 4226.0%, Mem: 419MiB) ===
[info] saved results/json-h2c/4096/zix-http2.json
httparena-bench-zix-http2
httparena-bench-zix-http2
[info] skip: zix-http2 does not subscribe to baseline-h3
[info] skip: zix-http2 does not subscribe to static-h3
[info] skip: zix-http2 does not subscribe to gateway-64
[info] skip: zix-http2 does not subscribe to gateway-h3
[info] skip: zix-http2 does not subscribe to production-stack
[info] skip: zix-http2 does not subscribe to unary-grpc
[info] skip: zix-http2 does not subscribe to unary-grpc-tls
[info] skip: zix-http2 does not subscribe to stream-grpc
[info] skip: zix-http2 does not subscribe to stream-grpc-tls
[info] skip: zix-http2 does not subscribe to echo-ws
[info] skip: zix-http2 does not subscribe to echo-ws-pipeline
[info] rebuilding site/data/*.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/frameworks.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/baseline-h2-1024.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/baseline-h2-256.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/baseline-h2c-1024.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/baseline-h2c-256.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/baseline-h2c-4096.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/json-h2c-1024.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/json-h2c-4096.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/static-h2-1024.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/static-h2-256.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/current.json
[info] done
[info] restoring loopback MTU to 65536

@prothegee

Copy link
Copy Markdown
Contributor Author

/benchmark -f zix-http2

@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: zix-http2 | Test: all tests

Test Conn RPS CPU Mem Δ RPS Δ Mem
baseline-h2 256 14,720,019 3475.1% 124MiB NEW NEW
baseline-h2 1024 14,445,316 3451.0% 216MiB NEW NEW
static-h2 256 1,688,925 5815.6% 224MiB NEW NEW
static-h2 1024 1,646,318 6432.7% 547MiB NEW NEW
baseline-h2c 256 14,696,294 3433.4% 108MiB NEW NEW
baseline-h2c 1024 14,720,256 3426.5% 128MiB NEW NEW
baseline-h2c 4096 13,904,754 3252.6% 218MiB NEW NEW
json-h2c 1024 6,704,282 3692.1% 173MiB NEW NEW
json-h2c 4096 6,818,717 4224.5% 426MiB NEW NEW
Full log

finished in 5.05s, 6719065.00 req/s, 22.27GB/s
requests: 33595325 total, 33628093 started, 33595325 done, 33595325 succeeded, 0 failed, 0 errored, 0 timeout
status codes: 33595325 2xx, 0 3xx, 0 4xx, 0 5xx
traffic: 111.33GB (119536313883) total, 668.24MB (700702060) headers (space savings 62.56%), 110.11GB (118230839653) data
                     min         max         mean         sd        +/- sd
time for request:       84us     12.24ms      2.48ms       719us    76.68%
time for connect:       23us      1.28ms       440us       251us    66.21%
time to 1st byte:     1.15ms     12.99ms      4.78ms      2.26ms    66.60%
req/s           :    6220.48     6917.76     6559.43      115.14    64.55%
[info] CPU 3498.6% | Mem 173MiB

[run 3/3]
starting benchmark...
.
46.
52
.Main benchmark duration is started for thread #48.


42.
36.
7progress: .
25% of clients started
39.
.
.
45.
9.
47.
47.
.Main benchmark duration is started for thread #21.



Application protocol: h2c
61. Stopping all clients.

26. Stopping all clients.
43. Stopping all clients.



finished in 5.06s, 6740958.60 req/s, 22.34GB/s
requests: 33704793 total, 33737561 started, 33704793 done, 33704793 succeeded, 0 failed, 0 errored, 0 timeout
status codes: 33704794 2xx, 0 3xx, 0 4xx, 0 5xx
traffic: 111.69GB (119925582136) total, 670.42MB (702985271) headers (space savings 62.56%), 110.47GB (118615854253) data
                     min         max         mean         sd        +/- sd
time for request:       80us     17.64ms      2.48ms       757us    78.21%
time for connect:       19us      1.74ms       442us       259us    67.09%
time to 1st byte:      893us     10.77ms      4.28ms      1.80ms    69.43%
req/s           :    6245.72     7044.36     6581.25      142.67    68.75%
[info] CPU 3695.3% | Mem 174MiB

=== Best: 6704282 req/s (CPU: 3692.1%, Mem: 173MiB) ===
[info] saved results/json-h2c/1024/zix-http2.json
httparena-bench-zix-http2
httparena-bench-zix-http2

==============================================
=== zix-http2 / json-h2c / 4096c (tool=h2load) ===
==============================================
[info] waiting for server...
[info] server ready

[run 1/3]
starting benchmark...
.


Application protocol: h2c
.Warm-up phase is over for thread #
11Main benchmark duration is started for thread #58.
19.


62. Stopping all clients.

50. Stopping all clients.

. Stopping all clients.

finished in 5.10s, 6826991.60 req/s, 22.62GB/s
requests: 34134958 total, 34266030 started, 34134958 done, 34134958 succeeded, 0 failed, 0 errored, 0 timeout
status codes: 34134959 2xx, 0 3xx, 0 4xx, 0 5xx
traffic: 113.10GB (121439667313) total, 678.97MB (711956032) headers (space savings 62.56%), 111.86GB (120113056739) data
                     min         max         mean         sd        +/- sd
time for request:       65us     82.74ms     11.08ms      5.97ms    91.12%
time for connect:       15us      7.87ms      2.38ms      1.79ms    61.35%
time to 1st byte:     7.73ms     84.56ms     47.05ms      7.90ms    74.71%
req/s           :    1572.44     1801.79     1664.50       33.97    70.14%
[info] CPU 4101.7% | Mem 432MiB

[run 2/3]
starting benchmark...
6.
Application protocol: h2c
31.
9Warm-up phase is over for thread #Main benchmark duration is started for thread #58.
36.
.8
.
8Warm-up phase is over for thread #.63.

.Warm-up phase is over for thread #Warm-up phase is over for thread #Warm-up phase is over for thread #Warm-up phase is over for thread #5532..54

.
.
11.
11.
33.
.Main benchmark duration is started for thread #Warm-up phase is over for thread #15.35
.


.

.

12
. Stopping all clients.
15
26. Stopping all clients.
30. Stopping all clients.

finished in 5.10s, 6955092.00 req/s, 23.04GB/s
requests: 34775460 total, 34906532 started, 34775460 done, 34775460 succeeded, 0 failed, 0 errored, 0 timeout
status codes: 34775460 2xx, 0 3xx, 0 4xx, 0 5xx
traffic: 115.22GB (123718458418) total, 691.71MB (725314977) headers (space savings 62.56%), 113.96GB (122366959881) data
                     min         max         mean         sd        +/- sd
time for request:       90us     48.33ms     10.40ms      3.49ms    84.61%
time for connect:       16us      6.52ms      2.75ms      1.94ms    53.00%
time to 1st byte:     3.22ms     57.03ms     21.56ms      7.30ms    73.00%
req/s           :    1630.03     1790.41     1695.85       30.45    63.70%
[info] CPU 4224.5% | Mem 426MiB

[run 3/3]
starting benchmark...
60.
.Warm-up phase is over for thread #12.

42.
32.
.

30.

.Main benchmark duration is started for thread #29.
.Main benchmark duration is started for thread #36.


.

.Main benchmark duration is started for thread #14.

progress: Main benchmark duration is started for thread #21.
75% of clients started
Application protocol: h2c
45. Stopping all clients.

finished in 5.11s, 6841448.20 req/s, 22.67GB/s
requests: 34207241 total, 34338313 started, 34207241 done, 34207241 succeeded, 0 failed, 0 errored, 0 timeout
status codes: 34207241 2xx, 0 3xx, 0 4xx, 0 5xx
traffic: 113.34GB (121696613117) total, 680.41MB (713463519) headers (space savings 62.56%), 112.10GB (120367193980) data
                     min         max         mean         sd        +/- sd
time for request:       98us     42.77ms     10.47ms      3.48ms    83.46%
time for connect:       17us      8.17ms      2.80ms      2.02ms    54.76%
time to 1st byte:     3.53ms     51.51ms     21.93ms      7.64ms    70.83%
req/s           :    1596.87     1763.15     1668.03       25.15    65.28%
[info] CPU 4132.9% | Mem 447MiB

=== Best: 6818717 req/s (CPU: 4224.5%, Mem: 426MiB) ===
[info] saved results/json-h2c/4096/zix-http2.json
httparena-bench-zix-http2
httparena-bench-zix-http2
[info] skip: zix-http2 does not subscribe to baseline-h3
[info] skip: zix-http2 does not subscribe to static-h3
[info] skip: zix-http2 does not subscribe to gateway-64
[info] skip: zix-http2 does not subscribe to gateway-h3
[info] skip: zix-http2 does not subscribe to production-stack
[info] skip: zix-http2 does not subscribe to unary-grpc
[info] skip: zix-http2 does not subscribe to unary-grpc-tls
[info] skip: zix-http2 does not subscribe to stream-grpc
[info] skip: zix-http2 does not subscribe to stream-grpc-tls
[info] skip: zix-http2 does not subscribe to echo-ws
[info] skip: zix-http2 does not subscribe to echo-ws-pipeline
[info] rebuilding site/data/*.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/frameworks.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/baseline-h2-1024.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/baseline-h2-256.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/baseline-h2c-1024.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/baseline-h2c-256.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/baseline-h2c-4096.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/json-h2c-1024.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/json-h2c-4096.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/static-h2-1024.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/static-h2-256.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/current.json
[info] done
[info] restoring loopback MTU to 65536

@MDA2AV
MDA2AV merged commit 797f17b into MDA2AV:main Jul 14, 2026
4 checks passed
@prothegee

prothegee commented Jul 14, 2026

Copy link
Copy Markdown
Contributor Author

Hi, @MDA2AV

I haven't run /benchmark -f zix-http2 --save on this pull-request: #982 (comment)

Should I pass this first for the --save command or back-to-back with grpc then http2?


Edited/Extra:

Or maybe, we can leave this as is (for this pull-request).

And later when I use --save and result passed (on any zix pull-request),
I'll mention both/any of core maintainers to honor pull-request respective subject before merge to main.

I think that also my mistake that I'm not mention which one to be check.

@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 --save cannot start: main has diverged and cannot be auto-merged into this branch. Please merge or rebase main manually, push, and re-run /benchmark --save.

@prothegee prothegee mentioned this pull request Jul 14, 2026
2 tasks
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