k-lani binary preview

Ticket Horde

sold == verified_sold
Hardware profile2 vCPUs4 GB RAM
Workload100000 users10000 tickets, 128 workers
Result10000 / 100000 double-spends in 8.323 s
Peak QPS8440read p90 <= 5000 us, update p90 <= 20000 us

This page is generated from the raw benchmark log inside the demo container. The published claim is persisted correctness under contention: 10,000 / 10,000 seats were sold, re-read from stored state, and matched exactly on a container limited to 2 vCPUs and 4 GB RAM.

Mechanical Sympathy

Page-cache friendly reads

The hot path starts with an indexed intersection over is_booked = 0 and rank = X, then short point reads on candidate rows. No SQL parser, ORM, or HTTP request fanout sits in the purchase loop.

WORM-first seat claims

A successful purchase is a locked row verification followed by a single replace that flips is_booked from 0 to 1. Lock conflicts are counted and retried; they do not serialize the whole table.

Honest scope

This published 5.389 s result came from the local TCP server path at 127.0.0.1:7700. The separate QUIC/WebTransport demo exists, but it is not what produced the number shown on this page.

Exact Flow Executed By This Benchmark

The hot loop in thundering_herd_concert_bench is a binary read-modify-write sequence over indexed seat rows. The public result above came from this shape, not from SQL text and not from a browser checkout path:

for each worker:
  ids = query_intersect_ids(handle, "is_booked", u32_bytes(0), "rank", u32_bytes(rank), 64)
  pick up to 16 candidate seat ids
  try_lock(handle, id)
  fields = seek_fields(handle, id)
  if is_booked != 0: already_sold += 1; unlock(handle, id); continue
  replace(handle, id, encode_u32_fields(rank, seat_no, 1))
  unlock(handle, id)
  sold += 1

after the storm:
  verify_sold_count() scans all 10,000 seats and recounts persisted sold rows

What this proves for a ticketing company: k-lani can serve as a narrow inventory and reservation engine behind an existing commerce stack. What it does not prove on its own: payment orchestration, cart UX, or direct browser-to-engine QUIC checkout in production.

Final line

thundering_herd_done users=100000 seats=10000 sold=10000 verified_sold=10000 read_queries=36845 updates=10000 peak_qps=8440 read_p90_us=5000 update_p90_us=20000 lock_conflicts=10651 already_sold=24901 no_ticket=90000 failed_workers=0 wall_secs=8.323

Artifacts