feat: add HTTP readiness latency benchmark - #3
Open
jim-junior wants to merge 1 commit into
Open
Conversation
Signed-off-by: jim-junior <jimjunior854@gmail.com>
jim-junior
force-pushed
the
ft-http-readiness
branch
from
August 3, 2026 11:42
3e5274c to
333407b
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR adds an HTTP readiness latency benchmark adapter.
The benchmark measures how long a container takes to become ready to serve HTTP requests. Measurement begins immediately before the OCI start command is invoked and ends when the container returns its first HTTP
200 OKresponse.How It Works
The adapter uses the CLI-based execution path with
nerdctlinstead of the Go containerd API.The benchmark performs the following steps:
GETrequests to the container URL.200 OKresponse is received.Only HTTP
200 OKis considered a successful readiness response.The probe ignores:
4xxresponses5xxresponses200HTTP responseContainer Images
docker.io/library/nginx:latestdocker.io/library/nginx:latestdocker.io/library/nginx:latestharbor.nbfc.io/nubificus/urunc/nginx-qemu-unikraft-initrd:latestReadiness Latency Definition
This represents the time taken for the containerized HTTP server to become available after the runtime start operation is invoked.
Output Format
The readiness data is recorded in the adapter's
Wait Readystage.Example:
{ "attempts": 482, // Number of HTTP requests made before receiving the first 200 OK response "end": "2026-08-02T15:45:24.768593448+03:00", "latency": 1893693110, "latency_ms": 1893.693, "readiness_latency": 1893693110, "readiness_latency_ms": 1893.693, "ready_at": "2026-08-02T15:45:24.768593448+03:00", "start": "2026-08-02T15:45:22.874900338+03:00", "status_code": 200, "url": "http://127.0.0.1:8082/" }