Latency Benchmark
Sustained 100K events/sec over one hour, including network round-trips to and from klite (acks=1). We chose 100K because it stays comfortably below the gp3 volume’s 125 MiB/s throughput cap.
Two m7g.xlarge (Graviton3, 4 vCPU, 16 GB) instances on AWS in the same availability zone. One runs klite, the other runs the benchmark client. Separate machines so the numbers include real network hops, not loopback. klite only uses ~6 GB of memory. We need this instance size not for RAM but because smaller instances have lower baseline EBS bandwidth.
The benchmark produces 100,000 events/sec (~1 KB each, ~97 MB/s) and consumes them back, sustained for one hour. 360 million events total. Acks=1.
Reproduce
Section titled “Reproduce”./scripts/bench-aws.py up \ --klite-instance m7g.xlarge --bench-instance m7g.xlarge
./scripts/bench-aws.py run \ --mode produce-consume \ --partitions 6 --producers 6 --consumers 6 \ --num-records 360000000 --record-size 1024 \ --throughput 100000 --acks 1 \ --max-buffered-records 2048 --warmup-records 50000 \ --wal-max-disk-size 32212254720
./scripts/bench-aws.py down