+Expand for full `k6` reports
+
+1 vCPU/256MB RAM/1 VUs - gosherve
(old)
+
+checks.........................: 100.00% ✓ 23322 ✗ 0
+data_received..................: 2.6 GB 86 MB/s
+data_sent......................: 3.1 MB 105 kB/s
+http_req_blocked...............: avg=2.41µs min=400ns med=1.28µs max=1.04ms p(90)=1.87µs p(95)=2.27µs
+http_req_connecting............: avg=50ns min=0s med=0s max=508.13µs p(90)=0s p(95)=0s
+http_req_duration..............: avg=7.57ms min=49.54µs med=7.71ms max=143.13ms p(90)=9.42ms p(95)=10.65ms
+ { expected_response:true }...: avg=7.57ms min=49.54µs med=7.71ms max=143.13ms p(90)=9.42ms p(95)=10.65ms
+http_req_failed................: 0.00% ✓ 0 ✗ 23322
+http_req_receiving.............: avg=98.03µs min=4.46µs med=57.25µs max=7.69ms p(90)=177.19µs p(95)=250.6µs
+http_req_sending...............: avg=5.7µs min=970ns med=3.1µs max=480.07µs p(90)=4.79µs p(95)=9.26µs
+http_req_tls_handshaking.......: avg=0s min=0s med=0s max=0s p(90)=0s p(95)=0s
+http_req_waiting...............: avg=7.47ms min=37.26µs med=7.62ms max=142.9ms p(90)=9.24ms p(95)=10.33ms
+http_reqs......................: 23322 776.881114/s
+iteration_duration.............: avg=217.52ms min=187.06ms med=198.66ms max=359.52ms p(90)=276.89ms p(95)=280.19ms
+iterations.....................: 138 4.59693/s
+vus............................: 1 min=1 max=1
+vus_max........................: 1 min=1 max=1
+
+
+
+
+1 vCPU/256MB RAM/1 VUs - gosherve
+
+checks.........................: 100.00% ✓ 158691 ✗ 0
+data_received..................: 18 GB 587 MB/s
+data_sent......................: 21 MB 714 kB/s
+http_req_blocked...............: avg=1.89µs min=379ns med=1.08µs max=1.15ms p(90)=1.62µs p(95)=1.98µs
+http_req_connecting............: avg=11ns min=0s med=0s max=655.05µs p(90)=0s p(95)=0s
+http_req_duration..............: avg=1.04ms min=48.25µs med=537.57µs max=31.33ms p(90)=2.63ms p(95)=3.66ms
+ { expected_response:true }...: avg=1.04ms min=48.25µs med=537.57µs max=31.33ms p(90)=2.63ms p(95)=3.66ms
+http_req_failed................: 0.00% ✓ 0 ✗ 158691
+http_req_receiving.............: avg=91.12µs min=3.66µs med=20.8µs max=23.05ms p(90)=156.29µs p(95)=287.17µs
+http_req_sending...............: avg=6.47µs min=900ns med=2.57µs max=2.22ms p(90)=4.06µs p(95)=6.21µs
+http_req_tls_handshaking.......: avg=0s min=0s med=0s max=0s p(90)=0s p(95)=0s
+http_req_waiting...............: avg=949.02µs min=35.88µs med=466.14µs max=31.3ms p(90)=2.46ms p(95)=3.47ms
+http_reqs......................: 158691 5287.057691/s
+iteration_duration.............: avg=31.95ms min=21.16ms med=30.39ms max=107.46ms p(90)=36.19ms p(95)=41.18ms
+iterations.....................: 939 31.284365/s
+vus............................: 1 min=1 max=1
+vus_max........................: 1 min=1 max=1
+
+
+
+
+1 vCPU/256MB RAM/1 VUs - servy
+
+checks.........................: 100.00% ✓ 148213 ✗ 0
+data_received..................: 16 GB 547 MB/s
+data_sent......................: 18 MB 605 kB/s
+http_req_blocked...............: avg=1.5µs min=350ns med=971ns max=1.11ms p(90)=1.48µs p(95)=1.82µs
+http_req_connecting............: avg=11ns min=0s med=0s max=451.97µs p(90)=0s p(95)=0s
+http_req_duration..............: avg=928.79µs min=69.84µs med=671.38µs max=55.59ms p(90)=1.57ms p(95)=2.18ms
+ { expected_response:true }...: avg=928.79µs min=69.84µs med=671.38µs max=55.59ms p(90)=1.57ms p(95)=2.18ms
+http_req_failed................: 0.00% ✓ 0 ✗ 148213
+http_req_receiving.............: avg=136.98µs min=3.76µs med=17.14µs max=46.31ms p(90)=103.7µs p(95)=192.52µs
+http_req_sending...............: avg=5.33µs min=890ns med=2.35µs max=2.99ms p(90)=3.69µs p(95)=5.05µs
+http_req_tls_handshaking.......: avg=0s min=0s med=0s max=0s p(90)=0s p(95)=0s
+http_req_waiting...............: avg=786.47µs min=55.89µs med=629.47µs max=17.92ms p(90)=1.43ms p(95)=1.96ms
+http_reqs......................: 148213 4940.080272/s
+iteration_duration.............: avg=34.19ms min=16.57ms med=25.68ms max=109.45ms p(90)=55.08ms p(95)=57.83ms
+iterations.....................: 877 29.231244/s
+vus............................: 1 min=1 max=1
+vus_max........................: 1 min=1 max=1
+
+
+
+
+2 vCPU/4GB RAM/10 VUs - gosherve
(old)
+
+checks.........................: 100.00% ✓ 116272 ✗ 0
+data_received..................: 13 GB 426 MB/s
+data_sent......................: 16 MB 518 kB/s
+http_req_blocked...............: avg=2.25µs min=380ns med=1.06µs max=4.3ms p(90)=1.69µs p(95)=2.05µs
+http_req_connecting............: avg=475ns min=0s med=0s max=4.27ms p(90)=0s p(95)=0s
+http_req_duration..............: avg=15.37ms min=29.8µs med=14.28ms max=145.82ms p(90)=24.79ms p(95)=29.78ms
+ { expected_response:true }...: avg=15.37ms min=29.8µs med=14.28ms max=145.82ms p(90)=24.79ms p(95)=29.78ms
+http_req_failed................: 0.00% ✓ 0 ✗ 116272
+http_req_receiving.............: avg=174.41µs min=4.15µs med=28.84µs max=21.95ms p(90)=241.72µs p(95)=703.97µs
+http_req_sending...............: avg=7.22µs min=890ns med=2.98µs max=5.58ms p(90)=5.8µs p(95)=9.15µs
+http_req_tls_handshaking.......: avg=0s min=0s med=0s max=0s p(90)=0s p(95)=0s
+http_req_waiting...............: avg=15.19ms min=22.98µs med=14.11ms max=144.5ms p(90)=24.48ms p(95)=29.37ms
+http_reqs......................: 116272 3837.442876/s
+iteration_duration.............: avg=439.41ms min=323.27ms med=430.04ms max=567.74ms p(90)=505.87ms p(95)=516.96ms
+iterations.....................: 688 22.706763/s
+vus............................: 10 min=10 max=10
+vus_max........................: 10 min=10 max=10
+
+
+
+
+2 vCPU/4GB RAM/10 VUs - gosherve
+
+checks.........................: 100.00% ✓ 362167 ✗ 0
+data_received..................: 40 GB 1.3 GB/s
+data_sent......................: 49 MB 1.6 MB/s
+http_req_blocked...............: avg=2.23µs min=360ns med=770ns max=12.31ms p(90)=1.34µs p(95)=1.66µs
+http_req_connecting............: avg=117ns min=0s med=0s max=1.84ms p(90)=0s p(95)=0s
+http_req_duration..............: avg=4.7ms min=32.38µs med=3.94ms max=47.81ms p(90)=9.04ms p(95)=11.63ms
+ { expected_response:true }...: avg=4.7ms min=32.38µs med=3.94ms max=47.81ms p(90)=9.04ms p(95)=11.63ms
+http_req_failed................: 0.00% ✓ 0 ✗ 362167
+http_req_receiving.............: avg=196.28µs min=3.38µs med=15.42µs max=25.62ms p(90)=142.41µs p(95)=896.21µs
+http_req_sending...............: avg=8.44µs min=890ns med=2.19µs max=18.13ms p(90)=3.63µs p(95)=6.34µs
+http_req_tls_handshaking.......: avg=0s min=0s med=0s max=0s p(90)=0s p(95)=0s
+http_req_waiting...............: avg=4.5ms min=25.57µs med=3.77ms max=45.46ms p(90)=8.74ms p(95)=11.13ms
+http_reqs......................: 362167 12040.737924/s
+iteration_duration.............: avg=140.21ms min=80.54ms med=139.82ms max=221.91ms p(90)=153.25ms p(95)=157.95ms
+iterations.....................: 2143 71.24697/s
+vus............................: 10 min=10 max=10
+vus_max........................: 10 min=10 max=10
+
+
+
+
+2 vCPU/4GB RAM/10 VUs - servy
+
+checks.........................: 100.00% ✓ 464412 ✗ 0
+data_received..................: 51 GB 1.7 GB/s
+data_sent......................: 57 MB 1.9 MB/s
+http_req_blocked...............: avg=1.99µs min=360ns med=720ns max=14.38ms p(90)=1.13µs p(95)=1.42µs
+http_req_connecting............: avg=92ns min=0s med=0s max=6.71ms p(90)=0s p(95)=0s
+http_req_duration..............: avg=3.67ms min=44.91µs med=3.07ms max=60.17ms p(90)=5.9ms p(95)=7.98ms
+ { expected_response:true }...: avg=3.67ms min=44.91µs med=3.07ms max=60.17ms p(90)=5.9ms p(95)=7.98ms
+http_req_failed................: 0.00% ✓ 0 ✗ 464412
+http_req_receiving.............: avg=206.58µs min=3.41µs med=14.06µs max=56.96ms p(90)=56.97µs p(95)=143.43µs
+http_req_sending...............: avg=7.12µs min=870ns med=1.62µs max=14.84ms p(90)=3.01µs p(95)=5.78µs
+http_req_tls_handshaking.......: avg=0s min=0s med=0s max=0s p(90)=0s p(95)=0s
+http_req_waiting...............: avg=3.45ms min=35.61µs med=3.01ms max=24.64ms p(90)=5.7ms p(95)=7.54ms
+http_reqs......................: 464412 15448.582291/s
+iteration_duration.............: avg=109.3ms min=63.59ms med=108.88ms max=161.77ms p(90)=120.71ms p(95)=124.65ms
+iterations.....................: 2748 91.41173/s
+vus............................: 10 min=10 max=10
+vus_max........................: 10 min=10 max=10
+
+
+
+
+16 vCPU/16GB RAM/10 VUs - gosherve
(old)
+
+checks.........................: 100.00% ✓ 119990 ✗ 0
+data_received..................: 13 GB 439 MB/s
+data_sent......................: 16 MB 534 kB/s
+http_req_blocked...............: avg=2.05µs min=440ns med=1.55µs max=972.62µs p(90)=2.32µs p(95)=2.74µs
+http_req_connecting............: avg=38ns min=0s med=0s max=275.54µs p(90)=0s p(95)=0s
+http_req_duration..............: avg=14.82ms min=35.49µs med=15.16ms max=148.26ms p(90)=21.12ms p(95)=23.89ms
+ { expected_response:true }...: avg=14.82ms min=35.49µs med=15.16ms max=148.26ms p(90)=21.12ms p(95)=23.89ms
+http_req_failed................: 0.00% ✓ 0 ✗ 119990
+http_req_receiving.............: avg=104.7µs min=5.07µs med=43.71µs max=8.96ms p(90)=228.22µs p(95)=396.05µs
+http_req_sending...............: avg=4.52µs min=940ns med=3.99µs max=944.81µs p(90)=6.28µs p(95)=7.86µs
+http_req_tls_handshaking.......: avg=0s min=0s med=0s max=0s p(90)=0s p(95)=0s
+http_req_waiting...............: avg=14.71ms min=23.97µs med=15.05ms max=148.25ms p(90)=20.95ms p(95)=23.7ms
+http_reqs......................: 119990 3957.203279/s
+iteration_duration.............: avg=426.57ms min=343.33ms med=422.38ms max=526.97ms p(90)=491ms p(95)=502.47ms
+iterations.....................: 710 23.415404/s
+vus............................: 10 min=10 max=10
+vus_max........................: 10 min=10 max=10
+
+
+
+
+16 vCPU/16GB RAM/10 VUs - gosherve
+
+checks.........................: 100.00% ✓ 1297244 ✗ 0
+data_received..................: 144 GB 4.8 GB/s
+data_sent......................: 175 MB 5.8 MB/s
+http_req_blocked...............: avg=2.83µs min=419ns med=1.63µs max=7.97ms p(90)=2.95µs p(95)=3.78µs
+http_req_connecting............: avg=2ns min=0s med=0s max=142.69µs p(90)=0s p(95)=0s
+http_req_duration..............: avg=1.22ms min=31.96µs med=697.97µs max=36.9ms p(90)=3.16ms p(95)=4.07ms
+ { expected_response:true }...: avg=1.22ms min=31.96µs med=697.97µs max=36.9ms p(90)=3.16ms p(95)=4.07ms
+http_req_failed................: 0.00% ✓ 0 ✗ 1297244
+http_req_receiving.............: avg=234.98µs min=4.21µs med=39.77µs max=35.6ms p(90)=640.71µs p(95)=1.24ms
+http_req_sending...............: avg=7.19µs min=930ns med=3.91µs max=30.11ms p(90)=6.84µs p(95)=9.22µs
+http_req_tls_handshaking.......: avg=0s min=0s med=0s max=0s p(90)=0s p(95)=0s
+http_req_waiting...............: avg=980.01µs min=19.74µs med=465.75µs max=16.64ms p(90)=2.75ms p(95)=3.68ms
+http_reqs......................: 1297244 43221.02723/s
+iteration_duration.............: avg=39.08ms min=23.12ms med=38.84ms max=76ms p(90)=43.87ms p(95)=45.71ms
+iterations.....................: 7676 255.745723/s
+vus............................: 10 min=10 max=10
+vus_max........................: 10 min=10 max=10
+
+
+
+
+16 vCPU/16GB RAM/10 VUs - servy
+
+checks.........................: 100.00% ✓ 1407770 ✗ 0
+data_received..................: 156 GB 5.2 GB/s
+data_sent......................: 172 MB 5.7 MB/s
+http_req_blocked...............: avg=2.28µs min=420ns med=1.64µs max=3.96ms p(90)=3µs p(95)=3.94µs
+http_req_connecting............: avg=2ns min=0s med=0s max=292.26µs p(90)=0s p(95)=0s
+http_req_duration..............: avg=512.52µs min=40.21µs med=177.39µs max=45.65ms p(90)=444.41µs p(95)=623.84µs
+ { expected_response:true }...: avg=512.52µs min=40.21µs med=177.39µs max=45.65ms p(90)=444.41µs p(95)=623.84µs
+http_req_failed................: 0.00% ✓ 0 ✗ 1407770
+http_req_receiving.............: avg=324.43µs min=4.02µs med=26.56µs max=45.31ms p(90)=88.04µs p(95)=147.94µs
+http_req_sending...............: avg=4.33µs min=969ns med=3.35µs max=4.11ms p(90)=5.86µs p(95)=7.31µs
+http_req_tls_handshaking.......: avg=0s min=0s med=0s max=0s p(90)=0s p(95)=0s
+http_req_waiting...............: avg=183.74µs min=31.45µs med=132.09µs max=8.96ms p(90)=344.35µs p(95)=465.04µs
+http_reqs......................: 1407770 46854.747614/s
+iteration_duration.............: avg=36.03ms min=5.19ms med=45.31ms max=77.29ms p(90)=48.06ms p(95)=48.95ms
+iterations.....................: 8330 277.247027/s
+vus............................: 10 min=10 max=10
+vus_max........................: 10 min=10 max=10
+
+
+
+
+| | `gosherve (old)` | `gosherve` | `servy` |
+| :---------------------- | :--------------- | :---------- | :---------- |
+| 1 vCPU/256MB RAM/1 VUs | 86MB/s | **587MB/s** | 547MB/s |
+| 2 vCPU/4GB RAM/10 VUs | 426MB/s | 1.3GB/s | **1.7GB/s** |
+| 16 vCPU/16GB RAM/10 VUs | 439MB/s | 4.8GB/s | **5.2GB/s** |
+
+Interestingly, it seems that the `servy` variant actually outperformed `gosherve` again in these VM-based tests, where it didn't when run directly on my machine. In any case, the gap is now _much_ smaller between the two, and `gosherve` still seems to maintain an edge on very small machines.
+
+Note I had to drop the VUs to `1` on the smallest iteration, or I was seeing all three of the variants getting OOM-killed!
+
+I also added a [new flake input](https://github.com/jnsgruk/server-bench/blob/6db6c179649f44bb2f0fcc6a2441d8fc38b24f03/flake.nix#L6) in the `server-bench` repo that adds the `gosherve` based repo again, but pinned to the pre-optimised version.
+
+As such, if you want to try reproducing any of these results and measure old vs. new vs. `servy`, you just need to do the following:
+
+```shell
+# Build & run the VM
+❯ nix run github:jnsgruk/server-bench#benchvm -- --daemonize --display none
+
+# Edit the core/memory count as required
+❯ vim vm.nix
+
+# Start, and load test a server, choosing your variety
+❯ nix run github:jnsgruk/server-bench#benchvm-test --