Evidence contract · gray.http-comparison.v1

Measure the
whole curve.

Purpose

This methodology answers one narrow question: under the declared fixture and resource limits, how do the tested servers deliver exact plaintext and JSON responses as requested rate increases through saturation?

01 / Controlled environment

Same host.
Same limits.

Runtimes
Gray Static, Go, Node.js, nginx + PHP-FPM
Routes
Exact plaintext and per-request JSON
Rate ladder
8k, 12k, 20k, 30k, 45k, 60k, 75k requests/s
Duration
30 seconds per point after preflight
Server
One pinned AMD EPYC 9645 CPU; 512 MiB memory
Client
wrk2 on separate pinned CPUs; corrected latency enabled
Qualification
At least 95% delivery and corrected p99 below 100 ms
Integrity
Exact bytes, response status, hashes, telemetry, and independent verifier
01

No peak-only ranking.

Every requested rate remains in the dataset. A server that accepts more work while building seconds of queue is shown as overloaded, not declared faster.

02

No ecosystem conclusion.

The fixture does not rank maintainability, safety, libraries, production history, hiring, portability, or total cost.

03

No borrowed benchmark.

A counterpart appears as measured only after it runs in the same harness. Architecture guides do not import unrelated framework leaderboard scores.

04

No silent failed point.

Preflight, transport, HTTP status, delivery policy, resource telemetry, and completion markers remain part of the evidence.

02 / Dataset

Download every
accepted point.

The public JSON contains the requested rates, routes, runtimes, achieved throughput, delivery, and corrected latency values used by these pages.

Download dataset

Schema: gray.http-comparison.v1 · 56 points · publication copy synchronized from the verifier-accepted formal result.

03 / Limits

What this cannot
tell you.

  • How a full production framework or application will behave.
  • Whether one language is safer, easier to hire for, or less expensive to maintain.
  • How results change across operating systems, architectures, allocators, frameworks, and tuning.
  • Whether Gray's current commercial platform scope fits the critical system.
  • What an official TechEmpower submission would report.

04 / Citation and reuse

Keep the boundary
with the number.

You may link to this methodology and quote individual values when the runtime, route, requested rate, duration, CPU condition, and non-official status remain attached. Do not turn the orientation heuristic into a universal language ranking.

Published and reviewed by Grayworth Engineering · 2026-07-26