diff options
| author | eunhhu <[email protected]> | 2026-09-27 08:22:21 +0100 |
|---|---|---|
| committer | eunhhu <[email protected]> | 2026-09-27 08:22:21 +0100 |
| commit | ddff7e15d1d0e90a5f5a52fcc93828c8ef0bbd5c (patch) | |
| tree | 525426cea636be02a2f9c5c83df60ca8067c5c90 /benchmarks/http/axum-baseline | |
| parent | 25397ebb79fb554f4fa795603ee84d2aede83594 (diff) | |
| download | pure-ddff7e15d1d0e90a5f5a52fcc93828c8ef0bbd5c.tar.gz pure-ddff7e15d1d0e90a5f5a52fcc93828c8ef0bbd5c.zip | |
Make an API's answers the app's events (--reply OUTPUT=INPUT)
The final answer to each send of a wired output (a 2xx, or a 4xx but
408 and 429) becomes a message event of the given input: fields from
the answer's JSON object by name, other members skipped; a field the
answer lacks from the send's field of that name and type, so the
request's own id is there; a u32 http_status field is the status. It is
applied with the send's number from the wire's source, before the send
is trimmed and in the same save, so an answer that comes again after a
restart (the API repeating itself for the Idempotency-Key) applies once.
Sends that wait for answers go one per request; answers are saved with
the next round, or at once when none waits.
A server that writes an answer in pieces holds the second until the
first is acknowledged, and a delayed acknowledgement stalled every
answer 40 ms: the client now acknowledges at once (TCP_QUICKACK) after
each read. Against a payments API that answers 200 or 402, with the
sender killed (-9) midway, paid and declined orders matched the API's
answers one to one.
Diffstat (limited to 'benchmarks/http/axum-baseline')
0 files changed, 0 insertions, 0 deletions
