diff options
Diffstat (limited to 'research/experiments/011-http-frameworks')
3 files changed, 147 insertions, 0 deletions
diff --git a/research/experiments/011-http-frameworks/2026-09-27-pi5-sd-app.jsonl b/research/experiments/011-http-frameworks/2026-09-27-pi5-sd-app.jsonl new file mode 100644 index 0000000..68d609c --- /dev/null +++ b/research/experiments/011-http-frameworks/2026-09-27-pi5-sd-app.jsonl @@ -0,0 +1,108 @@ +{"requests_per_second": 23074, "completed": 69249, "2xx": 69249, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 2048, "p99_us": 20480, "max_us": 63488, "server": "pure-serve", "workload": "score, 64 conn, keep-alive", "round": 0, "probe_ms": 0.97, "rss_kib": 3104, "cpu_seconds": 0.75, "ok_per_cpu_second": 92332, "ok_per_second": 23083, "idle_rss_kib": 2384} +{"requests_per_second": 3437, "completed": 10313, "2xx": 10313, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 1536, "p99_us": 21504, "max_us": 81920, "server": "pure-serve", "workload": "score, 8 conn, keep-alive", "round": 0, "probe_ms": 1.23, "rss_kib": 3088, "cpu_seconds": 0.24, "ok_per_cpu_second": 42971, "ok_per_second": 3438, "idle_rss_kib": 2384} +{"requests_per_second": 126776, "completed": 380331, "2xx": 380331, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 480, "p99_us": 576, "max_us": 1984, "server": "pure-serve", "workload": "total, 64 conn, keep-alive", "round": 0, "probe_ms": null, "rss_kib": 3104, "cpu_seconds": 3.01, "ok_per_cpu_second": 126356, "ok_per_second": 126777, "idle_rss_kib": 2384} +{"requests_per_second": 93477, "completed": 280433, "2xx": 280433, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 608, "p99_us": 928, "max_us": 2048, "server": "pure-serve", "workload": "page 20 rows, 64 conn, keep-alive", "round": 0, "probe_ms": null, "rss_kib": 3152, "cpu_seconds": 2.99, "ok_per_cpu_second": 93790, "ok_per_second": 93478, "idle_rss_kib": 2384} +{"requests_per_second": 2798, "completed": 8396, "2xx": 8396, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 2048, "p99_us": 17408, "max_us": 61440, "server": "pure-serve", "workload": "mixed, 8 score + 56 total conn: posts", "round": 0, "probe_ms": 1.2, "rss_kib": 3136, "cpu_seconds": 3.12, "ok_per_cpu_second": 117420, "ok_per_second": 2799, "idle_rss_kib": 2384} +{"requests_per_second": 119318, "completed": 357955, "2xx": 357955, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 448, "p99_us": 672, "max_us": 1728, "server": "pure-serve", "workload": "mixed, 8 score + 56 total conn: reads", "round": 0, "probe_ms": 1.2, "rss_kib": 3136, "cpu_seconds": 3.12, "ok_per_cpu_second": 117420, "ok_per_second": 119318, "idle_rss_kib": 2384} +{"requests_per_second": 22739, "completed": 68262, "2xx": 68262, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 1984, "p99_us": 15360, "max_us": 77824, "server": "pure-serve-2", "workload": "score, 64 conn, keep-alive", "round": 0, "probe_ms": 0.96, "rss_kib": 3520, "cpu_seconds": 0.95, "ok_per_cpu_second": 71855, "ok_per_second": 22754, "idle_rss_kib": 2768} +{"requests_per_second": 3331, "completed": 10174, "2xx": 10174, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 1536, "p99_us": 20480, "max_us": 81920, "server": "pure-serve-2", "workload": "score, 8 conn, keep-alive", "round": 0, "probe_ms": 1.35, "rss_kib": 3504, "cpu_seconds": 0.34, "ok_per_cpu_second": 29924, "ok_per_second": 3391, "idle_rss_kib": 2768} +{"requests_per_second": 153188, "completed": 459577, "2xx": 459577, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 384, "p99_us": 608, "max_us": 4352, "server": "pure-serve-2", "workload": "total, 64 conn, keep-alive", "round": 0, "probe_ms": null, "rss_kib": 3568, "cpu_seconds": 4.46, "ok_per_cpu_second": 103044, "ok_per_second": 153192, "idle_rss_kib": 2768} +{"requests_per_second": 147026, "completed": 441100, "2xx": 441100, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 400, "p99_us": 640, "max_us": 4352, "server": "pure-serve-2", "workload": "page 20 rows, 64 conn, keep-alive", "round": 0, "probe_ms": null, "rss_kib": 3632, "cpu_seconds": 5.4, "ok_per_cpu_second": 81685, "ok_per_second": 147033, "idle_rss_kib": 2768} +{"requests_per_second": 647, "completed": 1987, "2xx": 1987, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 1536, "p99_us": 12800, "max_us": 57344, "server": "pure-serve-2", "workload": "mixed, 8 score + 56 total conn: posts", "round": 0, "probe_ms": 1.39, "rss_kib": 3824, "cpu_seconds": 4.47, "ok_per_cpu_second": 103311, "ok_per_second": 662, "idle_rss_kib": 2768} +{"requests_per_second": 153264, "completed": 459812, "2xx": 459812, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 336, "p99_us": 544, "max_us": 1984, "server": "pure-serve-2", "workload": "mixed, 8 score + 56 total conn: reads", "round": 0, "probe_ms": 1.39, "rss_kib": 3824, "cpu_seconds": 4.47, "ok_per_cpu_second": 103311, "ok_per_second": 153271, "idle_rss_kib": 2768} +{"requests_per_second": 134163, "completed": 402490, "2xx": 402490, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 448, "p99_us": 896, "max_us": 14848, "server": "axum-memory", "workload": "score, 64 conn, keep-alive", "round": 0, "probe_ms": 1.16, "rss_kib": 5008, "cpu_seconds": 7.33, "ok_per_cpu_second": 54910, "ok_per_second": 134163, "idle_rss_kib": 2784} +{"requests_per_second": 140944, "completed": 422833, "2xx": 422833, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 58, "p99_us": 104, "max_us": 1600, "server": "axum-memory", "workload": "score, 8 conn, keep-alive", "round": 0, "probe_ms": 1.35, "rss_kib": 5008, "cpu_seconds": 7.2, "ok_per_cpu_second": 58727, "ok_per_second": 140944, "idle_rss_kib": 2784} +{"requests_per_second": 136801, "completed": 410402, "2xx": 410402, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 448, "p99_us": 736, "max_us": 4608, "server": "axum-memory", "workload": "total, 64 conn, keep-alive", "round": 0, "probe_ms": null, "rss_kib": 5104, "cpu_seconds": 6.03, "ok_per_cpu_second": 68060, "ok_per_second": 136801, "idle_rss_kib": 2784} +{"requests_per_second": 92935, "completed": 278805, "2xx": 278805, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 640, "p99_us": 1216, "max_us": 9216, "server": "axum-memory", "workload": "page 20 rows, 64 conn, keep-alive", "round": 0, "probe_ms": null, "rss_kib": 5520, "cpu_seconds": 5.43, "ok_per_cpu_second": 51345, "ok_per_second": 92935, "idle_rss_kib": 2784} +{"requests_per_second": 52296, "completed": 156962, "2xx": 156962, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 58, "p99_us": 3968, "max_us": 8192, "server": "axum-memory", "workload": "mixed, 8 score + 56 total conn: posts", "round": 0, "probe_ms": 1.14, "rss_kib": 5520, "cpu_seconds": 6.46, "ok_per_cpu_second": 63195, "ok_per_second": 52321, "idle_rss_kib": 2784} +{"requests_per_second": 83757, "completed": 251277, "2xx": 251277, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 400, "p99_us": 5888, "max_us": 8192, "server": "axum-memory", "workload": "mixed, 8 score + 56 total conn: reads", "round": 0, "probe_ms": 1.14, "rss_kib": 5520, "cpu_seconds": 6.46, "ok_per_cpu_second": 63195, "ok_per_second": 83759, "idle_rss_kib": 2784} +{"requests_per_second": 209, "completed": 636, "2xx": 636, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 311296, "p99_us": 327680, "max_us": 327680, "server": "axum-durable", "workload": "score, 64 conn, keep-alive", "round": 0, "probe_ms": 1.2, "rss_kib": 4960, "cpu_seconds": 0.05, "ok_per_cpu_second": 12720, "ok_per_second": 212, "idle_rss_kib": 2656} +{"requests_per_second": 213, "completed": 640, "2xx": 640, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 32768, "p99_us": 86016, "max_us": 94208, "server": "axum-durable", "workload": "score, 8 conn, keep-alive", "round": 0, "probe_ms": 1.23, "rss_kib": 4960, "cpu_seconds": 0.07, "ok_per_cpu_second": 9143, "ok_per_second": 213, "idle_rss_kib": 2656} +{"requests_per_second": 131138, "completed": 393413, "2xx": 393413, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 448, "p99_us": 960, "max_us": 4608, "server": "axum-durable", "workload": "total, 64 conn, keep-alive", "round": 0, "probe_ms": null, "rss_kib": 6288, "cpu_seconds": 5.86, "ok_per_cpu_second": 67135, "ok_per_second": 131138, "idle_rss_kib": 2656} +{"requests_per_second": 89397, "completed": 268192, "2xx": 268192, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 640, "p99_us": 1472, "max_us": 5888, "server": "axum-durable", "workload": "page 20 rows, 64 conn, keep-alive", "round": 0, "probe_ms": null, "rss_kib": 6240, "cpu_seconds": 5.29, "ok_per_cpu_second": 50698, "ok_per_second": 89397, "idle_rss_kib": 2656} +{"requests_per_second": 212, "completed": 637, "2xx": 637, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 32768, "p99_us": 90112, "max_us": 98304, "server": "axum-durable", "workload": "mixed, 8 score + 56 total conn: posts", "round": 0, "probe_ms": 0.96, "rss_kib": 6144, "cpu_seconds": 0.16, "ok_per_cpu_second": 31637, "ok_per_second": 212, "idle_rss_kib": 2656} +{"requests_per_second": 1475, "completed": 4425, "2xx": 4425, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 32768, "p99_us": 94208, "max_us": 94208, "server": "axum-durable", "workload": "mixed, 8 score + 56 total conn: reads", "round": 0, "probe_ms": 0.96, "rss_kib": 6144, "cpu_seconds": 0.16, "ok_per_cpu_second": 31637, "ok_per_second": 1475, "idle_rss_kib": 2656} +{"requests_per_second": 141347, "completed": 424044, "2xx": 424044, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 400, "p99_us": 1856, "max_us": 8192, "server": "drogon-memory", "workload": "score, 64 conn, keep-alive", "round": 0, "probe_ms": 1.03, "rss_kib": 11664, "cpu_seconds": 6.5, "ok_per_cpu_second": 65238, "ok_per_second": 141348, "idle_rss_kib": 10944} +{"requests_per_second": 141254, "completed": 423765, "2xx": 423765, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 58, "p99_us": 72, "max_us": 3584, "server": "drogon-memory", "workload": "score, 8 conn, keep-alive", "round": 0, "probe_ms": 1.35, "rss_kib": 11664, "cpu_seconds": 6.74, "ok_per_cpu_second": 62873, "ok_per_second": 141255, "idle_rss_kib": 10944} +{"requests_per_second": 150290, "completed": 450877, "2xx": 450877, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 384, "p99_us": 800, "max_us": 8192, "server": "drogon-memory", "workload": "total, 64 conn, keep-alive", "round": 0, "probe_ms": null, "rss_kib": 11744, "cpu_seconds": 6.64, "ok_per_cpu_second": 67903, "ok_per_second": 150292, "idle_rss_kib": 10944} +{"requests_per_second": 133808, "completed": 401423, "2xx": 401423, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 384, "p99_us": 1664, "max_us": 8704, "server": "drogon-memory", "workload": "page 20 rows, 64 conn, keep-alive", "round": 0, "probe_ms": null, "rss_kib": 11792, "cpu_seconds": 7.76, "ok_per_cpu_second": 51730, "ok_per_second": 133808, "idle_rss_kib": 10944} +{"requests_per_second": 65965, "completed": 197988, "2xx": 197988, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 56, "p99_us": 3968, "max_us": 8192, "server": "drogon-memory", "workload": "mixed, 8 score + 56 total conn: posts", "round": 0, "probe_ms": 1.31, "rss_kib": 11856, "cpu_seconds": 6.36, "ok_per_cpu_second": 65239, "ok_per_second": 65996, "idle_rss_kib": 10944} +{"requests_per_second": 72310, "completed": 216933, "2xx": 216933, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 336, "p99_us": 4864, "max_us": 11264, "server": "drogon-memory", "workload": "mixed, 8 score + 56 total conn: reads", "round": 0, "probe_ms": 1.31, "rss_kib": 11856, "cpu_seconds": 6.36, "ok_per_cpu_second": 65239, "ok_per_second": 72311, "idle_rss_kib": 10944} +{"requests_per_second": 208, "completed": 624, "2xx": 624, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 262144, "p99_us": 1376256, "max_us": 2752512, "server": "drogon-durable", "workload": "score, 64 conn, keep-alive", "round": 0, "probe_ms": 0.96, "rss_kib": 11648, "cpu_seconds": 0.05, "ok_per_cpu_second": 12480, "ok_per_second": 208, "idle_rss_kib": 10944} +{"requests_per_second": 197, "completed": 591, "2xx": 591, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 24576, "p99_us": 229376, "max_us": 360448, "server": "drogon-durable", "workload": "score, 8 conn, keep-alive", "round": 0, "probe_ms": 2.69, "rss_kib": 11648, "cpu_seconds": 0.05, "ok_per_cpu_second": 11820, "ok_per_second": 197, "idle_rss_kib": 10944} +{"requests_per_second": 145982, "completed": 437975, "2xx": 437975, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 384, "p99_us": 832, "max_us": 34816, "server": "drogon-durable", "workload": "total, 64 conn, keep-alive", "round": 0, "probe_ms": null, "rss_kib": 11760, "cpu_seconds": 6.62, "ok_per_cpu_second": 66159, "ok_per_second": 145992, "idle_rss_kib": 10944} +{"requests_per_second": 137822, "completed": 413491, "2xx": 413491, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 416, "p99_us": 1472, "max_us": 5376, "server": "drogon-durable", "workload": "page 20 rows, 64 conn, keep-alive", "round": 0, "probe_ms": null, "rss_kib": 11808, "cpu_seconds": 7.96, "ok_per_cpu_second": 51946, "ok_per_second": 137830, "idle_rss_kib": 10944} +{"requests_per_second": 212, "completed": 636, "2xx": 636, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 32768, "p99_us": 94208, "max_us": 102400, "server": "drogon-durable", "workload": "mixed, 8 score + 56 total conn: posts", "round": 0, "probe_ms": 2.34, "rss_kib": 11872, "cpu_seconds": 0.15, "ok_per_cpu_second": 25833, "ok_per_second": 212, "idle_rss_kib": 10944} +{"requests_per_second": 1076, "completed": 3239, "2xx": 3239, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 36864, "p99_us": 344064, "max_us": 819200, "server": "drogon-durable", "workload": "mixed, 8 score + 56 total conn: reads", "round": 0, "probe_ms": 2.34, "rss_kib": 11872, "cpu_seconds": 0.15, "ok_per_cpu_second": 25833, "ok_per_second": 1080, "idle_rss_kib": 10944} +{"requests_per_second": 21862, "completed": 65586, "2xx": 65586, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 2176, "p99_us": 19456, "max_us": 77824, "server": "pure-serve-2", "workload": "score, 64 conn, keep-alive", "round": 1, "probe_ms": 1.25, "rss_kib": 3520, "cpu_seconds": 1.15, "ok_per_cpu_second": 57031, "ok_per_second": 21862, "idle_rss_kib": 2752} +{"requests_per_second": 3737, "completed": 11214, "2xx": 11214, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 1536, "p99_us": 11264, "max_us": 59392, "server": "pure-serve-2", "workload": "score, 8 conn, keep-alive", "round": 1, "probe_ms": 1.4, "rss_kib": 3520, "cpu_seconds": 0.41, "ok_per_cpu_second": 27351, "ok_per_second": 3738, "idle_rss_kib": 2752} +{"requests_per_second": 154229, "completed": 462701, "2xx": 462701, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 384, "p99_us": 608, "max_us": 4608, "server": "pure-serve-2", "workload": "total, 64 conn, keep-alive", "round": 1, "probe_ms": null, "rss_kib": 3568, "cpu_seconds": 4.35, "ok_per_cpu_second": 106368, "ok_per_second": 154234, "idle_rss_kib": 2752} +{"requests_per_second": 147618, "completed": 442858, "2xx": 442858, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 384, "p99_us": 672, "max_us": 7168, "server": "pure-serve-2", "workload": "page 20 rows, 64 conn, keep-alive", "round": 1, "probe_ms": null, "rss_kib": 3664, "cpu_seconds": 5.31, "ok_per_cpu_second": 83401, "ok_per_second": 147619, "idle_rss_kib": 2752} +{"requests_per_second": 2798, "completed": 8397, "2xx": 8397, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 1792, "p99_us": 23552, "max_us": 147456, "server": "pure-serve-2", "workload": "mixed, 8 score + 56 total conn: posts", "round": 1, "probe_ms": 0.96, "rss_kib": 3648, "cpu_seconds": 4.43, "ok_per_cpu_second": 99736, "ok_per_second": 2799, "idle_rss_kib": 2752} +{"requests_per_second": 144471, "completed": 433432, "2xx": 433432, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 352, "p99_us": 640, "max_us": 5632, "server": "pure-serve-2", "workload": "mixed, 8 score + 56 total conn: reads", "round": 1, "probe_ms": 0.96, "rss_kib": 3648, "cpu_seconds": 4.43, "ok_per_cpu_second": 99736, "ok_per_second": 144477, "idle_rss_kib": 2752} +{"requests_per_second": 134171, "completed": 402513, "2xx": 402513, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 448, "p99_us": 768, "max_us": 23552, "server": "axum-memory", "workload": "score, 64 conn, keep-alive", "round": 1, "probe_ms": 0.96, "rss_kib": 5152, "cpu_seconds": 7.39, "ok_per_cpu_second": 54467, "ok_per_second": 134171, "idle_rss_kib": 2784} +{"requests_per_second": 137851, "completed": 413555, "2xx": 413555, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 58, "p99_us": 112, "max_us": 3456, "server": "axum-memory", "workload": "score, 8 conn, keep-alive", "round": 1, "probe_ms": 0.97, "rss_kib": 5088, "cpu_seconds": 7.03, "ok_per_cpu_second": 58827, "ok_per_second": 137852, "idle_rss_kib": 2784} +{"requests_per_second": 136044, "completed": 408133, "2xx": 408133, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 448, "p99_us": 768, "max_us": 5376, "server": "axum-memory", "workload": "total, 64 conn, keep-alive", "round": 1, "probe_ms": null, "rss_kib": 5360, "cpu_seconds": 6.0, "ok_per_cpu_second": 68022, "ok_per_second": 136044, "idle_rss_kib": 2784} +{"requests_per_second": 95434, "completed": 286302, "2xx": 286302, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 640, "p99_us": 992, "max_us": 2432, "server": "axum-memory", "workload": "page 20 rows, 64 conn, keep-alive", "round": 1, "probe_ms": null, "rss_kib": 5760, "cpu_seconds": 5.54, "ok_per_cpu_second": 51679, "ok_per_second": 95434, "idle_rss_kib": 2784} +{"requests_per_second": 36748, "completed": 110245, "2xx": 110245, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 60, "p99_us": 3200, "max_us": 8192, "server": "axum-memory", "workload": "mixed, 8 score + 56 total conn: posts", "round": 1, "probe_ms": 1.2, "rss_kib": 5760, "cpu_seconds": 5.6, "ok_per_cpu_second": 63988, "ok_per_second": 36748, "idle_rss_kib": 2784} +{"requests_per_second": 82695, "completed": 248090, "2xx": 248090, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 496, "p99_us": 5376, "max_us": 9216, "server": "axum-memory", "workload": "mixed, 8 score + 56 total conn: reads", "round": 1, "probe_ms": 1.2, "rss_kib": 5760, "cpu_seconds": 5.6, "ok_per_cpu_second": 63988, "ok_per_second": 82697, "idle_rss_kib": 2784} +{"requests_per_second": 202, "completed": 608, "2xx": 608, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 311296, "p99_us": 344064, "max_us": 360448, "server": "axum-durable", "workload": "score, 64 conn, keep-alive", "round": 1, "probe_ms": 0.95, "rss_kib": 4896, "cpu_seconds": 0.06, "ok_per_cpu_second": 10133, "ok_per_second": 203, "idle_rss_kib": 2768} +{"requests_per_second": 207, "completed": 622, "2xx": 622, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 31744, "p99_us": 94208, "max_us": 98304, "server": "axum-durable", "workload": "score, 8 conn, keep-alive", "round": 1, "probe_ms": 1.23, "rss_kib": 4928, "cpu_seconds": 0.06, "ok_per_cpu_second": 10367, "ok_per_second": 207, "idle_rss_kib": 2768} +{"requests_per_second": 134710, "completed": 404133, "2xx": 404133, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 448, "p99_us": 736, "max_us": 2944, "server": "axum-durable", "workload": "total, 64 conn, keep-alive", "round": 1, "probe_ms": null, "rss_kib": 5648, "cpu_seconds": 6.04, "ok_per_cpu_second": 66909, "ok_per_second": 134711, "idle_rss_kib": 2768} +{"requests_per_second": 91894, "completed": 275682, "2xx": 275682, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 640, "p99_us": 1216, "max_us": 2944, "server": "axum-durable", "workload": "page 20 rows, 64 conn, keep-alive", "round": 1, "probe_ms": null, "rss_kib": 5968, "cpu_seconds": 5.43, "ok_per_cpu_second": 50770, "ok_per_second": 91894, "idle_rss_kib": 2768} +{"requests_per_second": 191, "completed": 572, "2xx": 572, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 34816, "p99_us": 110592, "max_us": 126976, "server": "axum-durable", "workload": "mixed, 8 score + 56 total conn: posts", "round": 1, "probe_ms": 1.33, "rss_kib": 6384, "cpu_seconds": 0.15, "ok_per_cpu_second": 31080, "ok_per_second": 191, "idle_rss_kib": 2768} +{"requests_per_second": 1362, "completed": 4090, "2xx": 4090, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 32768, "p99_us": 110592, "max_us": 110592, "server": "axum-durable", "workload": "mixed, 8 score + 56 total conn: reads", "round": 1, "probe_ms": 1.33, "rss_kib": 6384, "cpu_seconds": 0.15, "ok_per_cpu_second": 31080, "ok_per_second": 1363, "idle_rss_kib": 2768} +{"requests_per_second": 148201, "completed": 444606, "2xx": 444606, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 384, "p99_us": 736, "max_us": 16384, "server": "drogon-memory", "workload": "score, 64 conn, keep-alive", "round": 1, "probe_ms": 1.36, "rss_kib": 11648, "cpu_seconds": 6.63, "ok_per_cpu_second": 67060, "ok_per_second": 148202, "idle_rss_kib": 10944} +{"requests_per_second": 111786, "completed": 335358, "2xx": 335358, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 76, "p99_us": 160, "max_us": 1600, "server": "drogon-memory", "workload": "score, 8 conn, keep-alive", "round": 1, "probe_ms": 1.36, "rss_kib": 11648, "cpu_seconds": 4.88, "ok_per_cpu_second": 68721, "ok_per_second": 111786, "idle_rss_kib": 10944} +{"requests_per_second": 150896, "completed": 452697, "2xx": 452697, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 384, "p99_us": 640, "max_us": 5120, "server": "drogon-memory", "workload": "total, 64 conn, keep-alive", "round": 1, "probe_ms": null, "rss_kib": 11744, "cpu_seconds": 6.55, "ok_per_cpu_second": 69114, "ok_per_second": 150899, "idle_rss_kib": 10944} +{"requests_per_second": 144261, "completed": 432811, "2xx": 432811, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 384, "p99_us": 832, "max_us": 6912, "server": "drogon-memory", "workload": "page 20 rows, 64 conn, keep-alive", "round": 1, "probe_ms": null, "rss_kib": 11808, "cpu_seconds": 8.18, "ok_per_cpu_second": 52911, "ok_per_second": 144270, "idle_rss_kib": 10944} +{"requests_per_second": 65916, "completed": 197750, "2xx": 197750, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 46, "p99_us": 3968, "max_us": 8192, "server": "drogon-memory", "workload": "mixed, 8 score + 56 total conn: posts", "round": 1, "probe_ms": 0.96, "rss_kib": 11920, "cpu_seconds": 6.27, "ok_per_cpu_second": 66665, "ok_per_second": 65917, "idle_rss_kib": 10944} +{"requests_per_second": 73412, "completed": 220237, "2xx": 220237, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 336, "p99_us": 4864, "max_us": 12288, "server": "drogon-memory", "workload": "mixed, 8 score + 56 total conn: reads", "round": 1, "probe_ms": 0.96, "rss_kib": 11920, "cpu_seconds": 6.27, "ok_per_cpu_second": 66665, "ok_per_second": 73412, "idle_rss_kib": 10944} +{"requests_per_second": 199, "completed": 598, "2xx": 598, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 262144, "p99_us": 1114112, "max_us": 2490368, "server": "drogon-durable", "workload": "score, 64 conn, keep-alive", "round": 1, "probe_ms": 1.03, "rss_kib": 11616, "cpu_seconds": 0.04, "ok_per_cpu_second": 14950, "ok_per_second": 199, "idle_rss_kib": 10928} +{"requests_per_second": 190, "completed": 581, "2xx": 581, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 23552, "p99_us": 245760, "max_us": 425984, "server": "drogon-durable", "workload": "score, 8 conn, keep-alive", "round": 1, "probe_ms": 2.44, "rss_kib": 11632, "cpu_seconds": 0.06, "ok_per_cpu_second": 9683, "ok_per_second": 194, "idle_rss_kib": 10928} +{"requests_per_second": 147519, "completed": 442561, "2xx": 442561, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 384, "p99_us": 704, "max_us": 34816, "server": "drogon-durable", "workload": "total, 64 conn, keep-alive", "round": 1, "probe_ms": null, "rss_kib": 11696, "cpu_seconds": 6.54, "ok_per_cpu_second": 67670, "ok_per_second": 147520, "idle_rss_kib": 10928} +{"requests_per_second": 139265, "completed": 417819, "2xx": 417819, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 384, "p99_us": 1344, "max_us": 6144, "server": "drogon-durable", "workload": "page 20 rows, 64 conn, keep-alive", "round": 1, "probe_ms": null, "rss_kib": 11776, "cpu_seconds": 7.92, "ok_per_cpu_second": 52755, "ok_per_second": 139273, "idle_rss_kib": 10928} +{"requests_per_second": 198, "completed": 595, "2xx": 595, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 32768, "p99_us": 110592, "max_us": 139264, "server": "drogon-durable", "workload": "mixed, 8 score + 56 total conn: posts", "round": 1, "probe_ms": 1.14, "rss_kib": 11840, "cpu_seconds": 0.13, "ok_per_cpu_second": 30531, "ok_per_second": 198, "idle_rss_kib": 10928} +{"requests_per_second": 1125, "completed": 3374, "2xx": 3374, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 34816, "p99_us": 360448, "max_us": 819200, "server": "drogon-durable", "workload": "mixed, 8 score + 56 total conn: reads", "round": 1, "probe_ms": 1.14, "rss_kib": 11840, "cpu_seconds": 0.13, "ok_per_cpu_second": 30531, "ok_per_second": 1125, "idle_rss_kib": 10928} +{"requests_per_second": 21277, "completed": 64001, "2xx": 64001, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 2176, "p99_us": 21504, "max_us": 65536, "server": "pure-serve", "workload": "score, 64 conn, keep-alive", "round": 1, "probe_ms": 1.24, "rss_kib": 3072, "cpu_seconds": 0.85, "ok_per_cpu_second": 75295, "ok_per_second": 21334, "idle_rss_kib": 2384} +{"requests_per_second": 3531, "completed": 10601, "2xx": 10601, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 1536, "p99_us": 12288, "max_us": 90112, "server": "pure-serve", "workload": "score, 8 conn, keep-alive", "round": 1, "probe_ms": 1.42, "rss_kib": 3072, "cpu_seconds": 0.32, "ok_per_cpu_second": 33128, "ok_per_second": 3534, "idle_rss_kib": 2384} +{"requests_per_second": 125662, "completed": 376986, "2xx": 376986, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 480, "p99_us": 704, "max_us": 2688, "server": "pure-serve", "workload": "total, 64 conn, keep-alive", "round": 1, "probe_ms": null, "rss_kib": 3088, "cpu_seconds": 3.0, "ok_per_cpu_second": 125662, "ok_per_second": 125662, "idle_rss_kib": 2384} +{"requests_per_second": 93902, "completed": 281706, "2xx": 281706, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 608, "p99_us": 864, "max_us": 2048, "server": "pure-serve", "workload": "page 20 rows, 64 conn, keep-alive", "round": 1, "probe_ms": null, "rss_kib": 3136, "cpu_seconds": 3.0, "ok_per_cpu_second": 93902, "ok_per_second": 93902, "idle_rss_kib": 2384} +{"requests_per_second": 2831, "completed": 8496, "2xx": 8496, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 2048, "p99_us": 10752, "max_us": 59392, "server": "pure-serve", "workload": "mixed, 8 score + 56 total conn: posts", "round": 1, "probe_ms": 0.96, "rss_kib": 3152, "cpu_seconds": 3.12, "ok_per_cpu_second": 115388, "ok_per_second": 2832, "idle_rss_kib": 2384} +{"requests_per_second": 117171, "completed": 351516, "2xx": 351516, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 448, "p99_us": 768, "max_us": 2816, "server": "pure-serve", "workload": "mixed, 8 score + 56 total conn: reads", "round": 1, "probe_ms": 0.96, "rss_kib": 3152, "cpu_seconds": 3.12, "ok_per_cpu_second": 115388, "ok_per_second": 117172, "idle_rss_kib": 2384} +{"requests_per_second": 129068, "completed": 387205, "2xx": 387205, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 448, "p99_us": 1024, "max_us": 27648, "server": "axum-memory", "workload": "score, 64 conn, keep-alive", "round": 2, "probe_ms": 1.16, "rss_kib": 5248, "cpu_seconds": 7.03, "ok_per_cpu_second": 55079, "ok_per_second": 129068, "idle_rss_kib": 2800} +{"requests_per_second": 136683, "completed": 410049, "2xx": 410049, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 56, "p99_us": 116, "max_us": 3968, "server": "axum-memory", "workload": "score, 8 conn, keep-alive", "round": 2, "probe_ms": 1.35, "rss_kib": 5248, "cpu_seconds": 6.88, "ok_per_cpu_second": 59600, "ok_per_second": 136683, "idle_rss_kib": 2800} +{"requests_per_second": 129558, "completed": 388675, "2xx": 388675, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 448, "p99_us": 960, "max_us": 5632, "server": "axum-memory", "workload": "total, 64 conn, keep-alive", "round": 2, "probe_ms": null, "rss_kib": 5264, "cpu_seconds": 5.75, "ok_per_cpu_second": 67596, "ok_per_second": 129558, "idle_rss_kib": 2800} +{"requests_per_second": 90734, "completed": 272203, "2xx": 272203, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 672, "p99_us": 1152, "max_us": 5376, "server": "axum-memory", "workload": "page 20 rows, 64 conn, keep-alive", "round": 2, "probe_ms": null, "rss_kib": 6192, "cpu_seconds": 5.42, "ok_per_cpu_second": 50222, "ok_per_second": 90734, "idle_rss_kib": 2800} +{"requests_per_second": 41578, "completed": 124834, "2xx": 124834, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 60, "p99_us": 3456, "max_us": 8192, "server": "axum-memory", "workload": "mixed, 8 score + 56 total conn: posts", "round": 2, "probe_ms": 1.54, "rss_kib": 6192, "cpu_seconds": 6.17, "ok_per_cpu_second": 63517, "ok_per_second": 41611, "idle_rss_kib": 2800} +{"requests_per_second": 89022, "completed": 267066, "2xx": 267066, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 464, "p99_us": 5376, "max_us": 8192, "server": "axum-memory", "workload": "mixed, 8 score + 56 total conn: reads", "round": 2, "probe_ms": 1.54, "rss_kib": 6192, "cpu_seconds": 6.17, "ok_per_cpu_second": 63517, "ok_per_second": 89022, "idle_rss_kib": 2800} +{"requests_per_second": 180, "completed": 540, "2xx": 540, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 327680, "p99_us": 524288, "max_us": 524288, "server": "axum-durable", "workload": "score, 64 conn, keep-alive", "round": 2, "probe_ms": 1.41, "rss_kib": 4960, "cpu_seconds": 0.06, "ok_per_cpu_second": 9000, "ok_per_second": 180, "idle_rss_kib": 2784} +{"requests_per_second": 185, "completed": 558, "2xx": 558, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 34816, "p99_us": 94208, "max_us": 106496, "server": "axum-durable", "workload": "score, 8 conn, keep-alive", "round": 2, "probe_ms": 0.96, "rss_kib": 5088, "cpu_seconds": 0.05, "ok_per_cpu_second": 11160, "ok_per_second": 186, "idle_rss_kib": 2784} +{"requests_per_second": 134294, "completed": 402886, "2xx": 402886, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 448, "p99_us": 768, "max_us": 4096, "server": "axum-durable", "workload": "total, 64 conn, keep-alive", "round": 2, "probe_ms": null, "rss_kib": 6240, "cpu_seconds": 6.02, "ok_per_cpu_second": 66925, "ok_per_second": 134295, "idle_rss_kib": 2784} +{"requests_per_second": 94301, "completed": 282903, "2xx": 282903, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 640, "p99_us": 1024, "max_us": 2560, "server": "axum-durable", "workload": "page 20 rows, 64 conn, keep-alive", "round": 2, "probe_ms": null, "rss_kib": 6272, "cpu_seconds": 5.49, "ok_per_cpu_second": 51531, "ok_per_second": 94301, "idle_rss_kib": 2784} +{"requests_per_second": 195, "completed": 584, "2xx": 584, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 34816, "p99_us": 98304, "max_us": 106496, "server": "axum-durable", "workload": "mixed, 8 score + 56 total conn: posts", "round": 2, "probe_ms": 1.35, "rss_kib": 6336, "cpu_seconds": 0.14, "ok_per_cpu_second": 33107, "ok_per_second": 195, "idle_rss_kib": 2784} +{"requests_per_second": 1350, "completed": 4051, "2xx": 4051, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 34816, "p99_us": 90112, "max_us": 90112, "server": "axum-durable", "workload": "mixed, 8 score + 56 total conn: reads", "round": 2, "probe_ms": 1.35, "rss_kib": 6336, "cpu_seconds": 0.14, "ok_per_cpu_second": 33107, "ok_per_second": 1350, "idle_rss_kib": 2784} +{"requests_per_second": 132773, "completed": 398321, "2xx": 398321, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 384, "p99_us": 3072, "max_us": 22528, "server": "drogon-memory", "workload": "score, 64 conn, keep-alive", "round": 2, "probe_ms": 1.23, "rss_kib": 11648, "cpu_seconds": 6.04, "ok_per_cpu_second": 65947, "ok_per_second": 132774, "idle_rss_kib": 10944} +{"requests_per_second": 140275, "completed": 420826, "2xx": 420826, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 58, "p99_us": 76, "max_us": 4608, "server": "drogon-memory", "workload": "score, 8 conn, keep-alive", "round": 2, "probe_ms": 0.96, "rss_kib": 11648, "cpu_seconds": 6.68, "ok_per_cpu_second": 62998, "ok_per_second": 140275, "idle_rss_kib": 10944} +{"requests_per_second": 150521, "completed": 451588, "2xx": 451588, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 384, "p99_us": 736, "max_us": 6400, "server": "drogon-memory", "workload": "total, 64 conn, keep-alive", "round": 2, "probe_ms": null, "rss_kib": 11744, "cpu_seconds": 6.61, "ok_per_cpu_second": 68319, "ok_per_second": 150529, "idle_rss_kib": 10944} +{"requests_per_second": 138404, "completed": 415226, "2xx": 415226, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 400, "p99_us": 1344, "max_us": 7424, "server": "drogon-memory", "workload": "page 20 rows, 64 conn, keep-alive", "round": 2, "probe_ms": null, "rss_kib": 11824, "cpu_seconds": 7.93, "ok_per_cpu_second": 52361, "ok_per_second": 138409, "idle_rss_kib": 10944} +{"requests_per_second": 64401, "completed": 193204, "2xx": 193204, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 44, "p99_us": 3968, "max_us": 8704, "server": "drogon-memory", "workload": "mixed, 8 score + 56 total conn: posts", "round": 2, "probe_ms": 1.24, "rss_kib": 11856, "cpu_seconds": 6.27, "ok_per_cpu_second": 65936, "ok_per_second": 64401, "idle_rss_kib": 10944} +{"requests_per_second": 73403, "completed": 220214, "2xx": 220214, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 336, "p99_us": 4608, "max_us": 9216, "server": "drogon-memory", "workload": "mixed, 8 score + 56 total conn: reads", "round": 2, "probe_ms": 1.24, "rss_kib": 11856, "cpu_seconds": 6.27, "ok_per_cpu_second": 65936, "ok_per_second": 73405, "idle_rss_kib": 10944} +{"requests_per_second": 151, "completed": 453, "2xx": 453, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 294912, "p99_us": 1966080, "max_us": 2621440, "server": "drogon-durable", "workload": "score, 64 conn, keep-alive", "round": 2, "probe_ms": 0.96, "rss_kib": 11664, "cpu_seconds": 0.05, "ok_per_cpu_second": 9060, "ok_per_second": 151, "idle_rss_kib": 10960} +{"requests_per_second": 150, "completed": 450, "2xx": 450, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 32768, "p99_us": 507904, "max_us": 688128, "server": "drogon-durable", "workload": "score, 8 conn, keep-alive", "round": 2, "probe_ms": 3.0, "rss_kib": 11664, "cpu_seconds": 0.05, "ok_per_cpu_second": 9000, "ok_per_second": 150, "idle_rss_kib": 10960} +{"requests_per_second": 147388, "completed": 442174, "2xx": 442174, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 384, "p99_us": 800, "max_us": 26624, "server": "drogon-durable", "workload": "total, 64 conn, keep-alive", "round": 2, "probe_ms": null, "rss_kib": 11808, "cpu_seconds": 6.56, "ok_per_cpu_second": 67405, "ok_per_second": 147391, "idle_rss_kib": 10960} +{"requests_per_second": 127140, "completed": 381420, "2xx": 381420, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 400, "p99_us": 2048, "max_us": 12800, "server": "drogon-durable", "workload": "page 20 rows, 64 conn, keep-alive", "round": 2, "probe_ms": null, "rss_kib": 11872, "cpu_seconds": 7.32, "ok_per_cpu_second": 52107, "ok_per_second": 127140, "idle_rss_kib": 10960} +{"requests_per_second": 159, "completed": 477, "2xx": 477, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 40960, "p99_us": 155648, "max_us": 180224, "server": "drogon-durable", "workload": "mixed, 8 score + 56 total conn: posts", "round": 2, "probe_ms": 1.32, "rss_kib": 11888, "cpu_seconds": 0.26, "ok_per_cpu_second": 29815, "ok_per_second": 159, "idle_rss_kib": 10960} +{"requests_per_second": 2423, "completed": 7275, "2xx": 7275, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 17408, "p99_us": 106496, "max_us": 163840, "server": "drogon-durable", "workload": "mixed, 8 score + 56 total conn: reads", "round": 2, "probe_ms": 1.32, "rss_kib": 11888, "cpu_seconds": 0.26, "ok_per_cpu_second": 29815, "ok_per_second": 2425, "idle_rss_kib": 10960} +{"requests_per_second": 19824, "completed": 59482, "2xx": 59482, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 2176, "p99_us": 22528, "max_us": 98304, "server": "pure-serve", "workload": "score, 64 conn, keep-alive", "round": 2, "probe_ms": 1.36, "rss_kib": 3120, "cpu_seconds": 0.83, "ok_per_cpu_second": 71665, "ok_per_second": 19827, "idle_rss_kib": 2384} +{"requests_per_second": 3483, "completed": 10585, "2xx": 10585, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 1472, "p99_us": 15872, "max_us": 81920, "server": "pure-serve", "workload": "score, 8 conn, keep-alive", "round": 2, "probe_ms": 1.01, "rss_kib": 3088, "cpu_seconds": 0.26, "ok_per_cpu_second": 40712, "ok_per_second": 3528, "idle_rss_kib": 2384} +{"requests_per_second": 121954, "completed": 365862, "2xx": 365862, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 496, "p99_us": 800, "max_us": 2816, "server": "pure-serve", "workload": "total, 64 conn, keep-alive", "round": 2, "probe_ms": null, "rss_kib": 3104, "cpu_seconds": 2.99, "ok_per_cpu_second": 122362, "ok_per_second": 121954, "idle_rss_kib": 2384} +{"requests_per_second": 85692, "completed": 257087, "2xx": 257087, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 672, "p99_us": 1216, "max_us": 6144, "server": "pure-serve", "workload": "page 20 rows, 64 conn, keep-alive", "round": 2, "probe_ms": null, "rss_kib": 3152, "cpu_seconds": 2.96, "ok_per_cpu_second": 86854, "ok_per_second": 85696, "idle_rss_kib": 2384} +{"requests_per_second": 2979, "completed": 8944, "2xx": 8944, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 2048, "p99_us": 11776, "max_us": 81920, "server": "pure-serve", "workload": "mixed, 8 score + 56 total conn: posts", "round": 2, "probe_ms": 1.36, "rss_kib": 3136, "cpu_seconds": 3.14, "ok_per_cpu_second": 118468, "ok_per_second": 2981, "idle_rss_kib": 2384} +{"requests_per_second": 121015, "completed": 363046, "2xx": 363046, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 432, "p99_us": 640, "max_us": 2816, "server": "pure-serve", "workload": "mixed, 8 score + 56 total conn: reads", "round": 2, "probe_ms": 1.36, "rss_kib": 3136, "cpu_seconds": 3.14, "ok_per_cpu_second": 118468, "ok_per_second": 121015, "idle_rss_kib": 2384} +{"requests_per_second": 20986, "completed": 63039, "2xx": 63039, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 2048, "p99_us": 22528, "max_us": 86016, "server": "pure-serve-2", "workload": "score, 64 conn, keep-alive", "round": 2, "probe_ms": 0.96, "rss_kib": 3520, "cpu_seconds": 0.9, "ok_per_cpu_second": 70043, "ok_per_second": 21013, "idle_rss_kib": 2752} +{"requests_per_second": 3687, "completed": 11067, "2xx": 11067, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 1472, "p99_us": 10752, "max_us": 245760, "server": "pure-serve-2", "workload": "score, 8 conn, keep-alive", "round": 2, "probe_ms": 1.22, "rss_kib": 3504, "cpu_seconds": 0.28, "ok_per_cpu_second": 39525, "ok_per_second": 3689, "idle_rss_kib": 2752} +{"requests_per_second": 152502, "completed": 457537, "2xx": 457537, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 400, "p99_us": 608, "max_us": 5120, "server": "pure-serve-2", "workload": "total, 64 conn, keep-alive", "round": 2, "probe_ms": null, "rss_kib": 3584, "cpu_seconds": 4.37, "ok_per_cpu_second": 104700, "ok_per_second": 152512, "idle_rss_kib": 2752} +{"requests_per_second": 148044, "completed": 444135, "2xx": 444135, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 400, "p99_us": 640, "max_us": 2944, "server": "pure-serve-2", "workload": "page 20 rows, 64 conn, keep-alive", "round": 2, "probe_ms": null, "rss_kib": 3648, "cpu_seconds": 5.4, "ok_per_cpu_second": 82247, "ok_per_second": 148045, "idle_rss_kib": 2752} +{"requests_per_second": 3629, "completed": 10892, "2xx": 10892, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 1536, "p99_us": 7936, "max_us": 90112, "server": "pure-serve-2", "workload": "mixed, 8 score + 56 total conn: posts", "round": 2, "probe_ms": 1.2, "rss_kib": 3680, "cpu_seconds": 4.43, "ok_per_cpu_second": 100360, "ok_per_second": 3631, "idle_rss_kib": 2752} +{"requests_per_second": 144563, "completed": 433701, "2xx": 433701, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 352, "p99_us": 640, "max_us": 5888, "server": "pure-serve-2", "workload": "mixed, 8 score + 56 total conn: reads", "round": 2, "probe_ms": 1.2, "rss_kib": 3680, "cpu_seconds": 4.43, "ok_per_cpu_second": 100360, "ok_per_second": 144567, "idle_rss_kib": 2752} diff --git a/research/experiments/011-http-frameworks/2026-09-27-pi5-sd-reads.jsonl b/research/experiments/011-http-frameworks/2026-09-27-pi5-sd-reads.jsonl new file mode 100644 index 0000000..359923c --- /dev/null +++ b/research/experiments/011-http-frameworks/2026-09-27-pi5-sd-reads.jsonl @@ -0,0 +1,36 @@ +{"requests_per_second": 23192, "completed": 69576, "2xx": 69576, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 2688, "p99_us": 3584, "max_us": 4608, "server": "pure-serve", "workload": "get 64B, 64 conn, close", "round": 0, "probe_ms": null, "rss_kib": 2928, "cpu_seconds": 1.66, "ok_per_cpu_second": 41913, "ok_per_second": 23192, "idle_rss_kib": 2320} +{"requests_per_second": 139320, "completed": 417961, "2xx": 417961, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 448, "p99_us": 544, "max_us": 2688, "server": "pure-serve", "workload": "get 64B, 64 conn, keep-alive", "round": 0, "probe_ms": null, "rss_kib": 2944, "cpu_seconds": 2.99, "ok_per_cpu_second": 139786, "ok_per_second": 139320, "idle_rss_kib": 2320} +{"requests_per_second": 2362, "completed": 7085, "2xx": 7085, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 3072, "p99_us": 5632, "max_us": 7936, "server": "pure-serve", "workload": "get 1MiB, 8 conn, keep-alive", "round": 0, "probe_ms": null, "rss_kib": 3936, "cpu_seconds": 2.99, "ok_per_cpu_second": 2370, "ok_per_second": 2362, "idle_rss_kib": 2320} +{"requests_per_second": 22649, "completed": 67971, "2xx": 67971, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 2560, "p99_us": 4608, "max_us": 16384, "server": "pure-serve-3", "workload": "get 64B, 64 conn, close", "round": 0, "probe_ms": null, "rss_kib": 4512, "cpu_seconds": 1.9, "ok_per_cpu_second": 35774, "ok_per_second": 22657, "idle_rss_kib": 3152} +{"requests_per_second": 148187, "completed": 444579, "2xx": 444579, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 400, "p99_us": 704, "max_us": 4352, "server": "pure-serve-3", "workload": "get 64B, 64 conn, keep-alive", "round": 0, "probe_ms": null, "rss_kib": 4512, "cpu_seconds": 4.49, "ok_per_cpu_second": 99015, "ok_per_second": 148193, "idle_rss_kib": 3152} +{"requests_per_second": 1750, "completed": 5250, "2xx": 5250, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 4096, "p99_us": 7680, "max_us": 17408, "server": "pure-serve-3", "workload": "get 1MiB, 8 conn, keep-alive", "round": 0, "probe_ms": null, "rss_kib": 7280, "cpu_seconds": 4.86, "ok_per_cpu_second": 1080, "ok_per_second": 1750, "idle_rss_kib": 3152} +{"requests_per_second": 22325, "completed": 66989, "2xx": 66989, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 2560, "p99_us": 4096, "max_us": 13824, "server": "axum-memory", "workload": "get 64B, 64 conn, close", "round": 0, "probe_ms": null, "rss_kib": 5664, "cpu_seconds": 3.62, "ok_per_cpu_second": 18505, "ok_per_second": 22330, "idle_rss_kib": 2768} +{"requests_per_second": 126959, "completed": 380878, "2xx": 380878, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 480, "p99_us": 800, "max_us": 3328, "server": "axum-memory", "workload": "get 64B, 64 conn, keep-alive", "round": 0, "probe_ms": null, "rss_kib": 5872, "cpu_seconds": 6.08, "ok_per_cpu_second": 62644, "ok_per_second": 126959, "idle_rss_kib": 2768} +{"requests_per_second": 1304, "completed": 3912, "2xx": 3912, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 5632, "p99_us": 9728, "max_us": 18432, "server": "axum-memory", "workload": "get 1MiB, 8 conn, keep-alive", "round": 0, "probe_ms": null, "rss_kib": 9696, "cpu_seconds": 4.07, "ok_per_cpu_second": 961, "ok_per_second": 1304, "idle_rss_kib": 2768} +{"requests_per_second": 21674, "completed": 65050, "2xx": 65050, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 2560, "p99_us": 4352, "max_us": 19456, "server": "drogon-memory", "workload": "get 64B, 64 conn, close", "round": 0, "probe_ms": null, "rss_kib": 71632, "cpu_seconds": 3.54, "ok_per_cpu_second": 18376, "ok_per_second": 21683, "idle_rss_kib": 10912} +{"requests_per_second": 146634, "completed": 439908, "2xx": 439908, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 400, "p99_us": 736, "max_us": 8192, "server": "drogon-memory", "workload": "get 64B, 64 conn, keep-alive", "round": 0, "probe_ms": null, "rss_kib": 71664, "cpu_seconds": 7.13, "ok_per_cpu_second": 61698, "ok_per_second": 146636, "idle_rss_kib": 10912} +{"requests_per_second": 754, "completed": 2263, "2xx": 2263, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 9728, "p99_us": 24576, "max_us": 36864, "server": "drogon-memory", "workload": "get 1MiB, 8 conn, keep-alive", "round": 0, "probe_ms": null, "rss_kib": 78816, "cpu_seconds": 7.71, "ok_per_cpu_second": 294, "ok_per_second": 754, "idle_rss_kib": 10912} +{"requests_per_second": 23383, "completed": 70165, "2xx": 70165, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 2432, "p99_us": 4352, "max_us": 18432, "server": "pure-serve-3", "workload": "get 64B, 64 conn, close", "round": 1, "probe_ms": null, "rss_kib": 4384, "cpu_seconds": 1.96, "ok_per_cpu_second": 35798, "ok_per_second": 23388, "idle_rss_kib": 3152} +{"requests_per_second": 150515, "completed": 451549, "2xx": 451549, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 400, "p99_us": 672, "max_us": 5888, "server": "pure-serve-3", "workload": "get 64B, 64 conn, keep-alive", "round": 1, "probe_ms": null, "rss_kib": 4432, "cpu_seconds": 4.55, "ok_per_cpu_second": 99242, "ok_per_second": 150516, "idle_rss_kib": 3152} +{"requests_per_second": 1850, "completed": 5552, "2xx": 5552, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 3968, "p99_us": 7424, "max_us": 11776, "server": "pure-serve-3", "workload": "get 1MiB, 8 conn, keep-alive", "round": 1, "probe_ms": null, "rss_kib": 7440, "cpu_seconds": 5.25, "ok_per_cpu_second": 1058, "ok_per_second": 1851, "idle_rss_kib": 3152} +{"requests_per_second": 22200, "completed": 66603, "2xx": 66603, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 2560, "p99_us": 4096, "max_us": 19456, "server": "axum-memory", "workload": "get 64B, 64 conn, close", "round": 1, "probe_ms": null, "rss_kib": 4208, "cpu_seconds": 3.69, "ok_per_cpu_second": 18050, "ok_per_second": 22201, "idle_rss_kib": 2768} +{"requests_per_second": 122730, "completed": 368189, "2xx": 368189, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 496, "p99_us": 864, "max_us": 4352, "server": "axum-memory", "workload": "get 64B, 64 conn, keep-alive", "round": 1, "probe_ms": null, "rss_kib": 5408, "cpu_seconds": 6.06, "ok_per_cpu_second": 60757, "ok_per_second": 122730, "idle_rss_kib": 2768} +{"requests_per_second": 1297, "completed": 3892, "2xx": 3892, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 5632, "p99_us": 9728, "max_us": 12800, "server": "axum-memory", "workload": "get 1MiB, 8 conn, keep-alive", "round": 1, "probe_ms": null, "rss_kib": 9248, "cpu_seconds": 4.08, "ok_per_cpu_second": 954, "ok_per_second": 1297, "idle_rss_kib": 2768} +{"requests_per_second": 20555, "completed": 61692, "2xx": 61692, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 2560, "p99_us": 5376, "max_us": 20480, "server": "drogon-memory", "workload": "get 64B, 64 conn, close", "round": 1, "probe_ms": null, "rss_kib": 68672, "cpu_seconds": 3.53, "ok_per_cpu_second": 17476, "ok_per_second": 20564, "idle_rss_kib": 10912} +{"requests_per_second": 147149, "completed": 441455, "2xx": 441455, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 384, "p99_us": 672, "max_us": 6144, "server": "drogon-memory", "workload": "get 64B, 64 conn, keep-alive", "round": 1, "probe_ms": null, "rss_kib": 68704, "cpu_seconds": 7.05, "ok_per_cpu_second": 62618, "ok_per_second": 147152, "idle_rss_kib": 10912} +{"requests_per_second": 764, "completed": 2292, "2xx": 2292, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 7424, "p99_us": 30720, "max_us": 49152, "server": "drogon-memory", "workload": "get 1MiB, 8 conn, keep-alive", "round": 1, "probe_ms": null, "rss_kib": 75888, "cpu_seconds": 7.73, "ok_per_cpu_second": 297, "ok_per_second": 764, "idle_rss_kib": 10912} +{"requests_per_second": 22557, "completed": 67676, "2xx": 67676, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 2816, "p99_us": 4096, "max_us": 6400, "server": "pure-serve", "workload": "get 64B, 64 conn, close", "round": 1, "probe_ms": null, "rss_kib": 2960, "cpu_seconds": 1.65, "ok_per_cpu_second": 41016, "ok_per_second": 22559, "idle_rss_kib": 2320} +{"requests_per_second": 138730, "completed": 416192, "2xx": 416192, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 448, "p99_us": 512, "max_us": 5632, "server": "pure-serve", "workload": "get 64B, 64 conn, keep-alive", "round": 1, "probe_ms": null, "rss_kib": 2960, "cpu_seconds": 2.99, "ok_per_cpu_second": 139195, "ok_per_second": 138731, "idle_rss_kib": 2320} +{"requests_per_second": 2352, "completed": 7057, "2xx": 7057, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 2944, "p99_us": 8192, "max_us": 16384, "server": "pure-serve", "workload": "get 1MiB, 8 conn, keep-alive", "round": 1, "probe_ms": null, "rss_kib": 3936, "cpu_seconds": 2.95, "ok_per_cpu_second": 2392, "ok_per_second": 2352, "idle_rss_kib": 2320} +{"requests_per_second": 21721, "completed": 65186, "2xx": 65186, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 2560, "p99_us": 4096, "max_us": 23552, "server": "axum-memory", "workload": "get 64B, 64 conn, close", "round": 2, "probe_ms": null, "rss_kib": 5344, "cpu_seconds": 3.52, "ok_per_cpu_second": 18519, "ok_per_second": 21729, "idle_rss_kib": 2800} +{"requests_per_second": 128872, "completed": 386618, "2xx": 386618, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 480, "p99_us": 768, "max_us": 3072, "server": "axum-memory", "workload": "get 64B, 64 conn, keep-alive", "round": 2, "probe_ms": null, "rss_kib": 5808, "cpu_seconds": 6.16, "ok_per_cpu_second": 62763, "ok_per_second": 128873, "idle_rss_kib": 2800} +{"requests_per_second": 1396, "completed": 4188, "2xx": 4188, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 5376, "p99_us": 8192, "max_us": 10752, "server": "axum-memory", "workload": "get 1MiB, 8 conn, keep-alive", "round": 2, "probe_ms": null, "rss_kib": 9120, "cpu_seconds": 4.1, "ok_per_cpu_second": 1021, "ok_per_second": 1396, "idle_rss_kib": 2800} +{"requests_per_second": 21205, "completed": 63634, "2xx": 63634, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 2560, "p99_us": 4352, "max_us": 28672, "server": "drogon-memory", "workload": "get 64B, 64 conn, close", "round": 2, "probe_ms": null, "rss_kib": 70416, "cpu_seconds": 3.44, "ok_per_cpu_second": 18498, "ok_per_second": 21211, "idle_rss_kib": 10928} +{"requests_per_second": 146679, "completed": 440044, "2xx": 440044, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 384, "p99_us": 672, "max_us": 5120, "server": "drogon-memory", "workload": "get 64B, 64 conn, keep-alive", "round": 2, "probe_ms": null, "rss_kib": 70448, "cpu_seconds": 7.02, "ok_per_cpu_second": 62684, "ok_per_second": 146681, "idle_rss_kib": 10928} +{"requests_per_second": 731, "completed": 2193, "2xx": 2193, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 8704, "p99_us": 23552, "max_us": 43008, "server": "drogon-memory", "workload": "get 1MiB, 8 conn, keep-alive", "round": 2, "probe_ms": null, "rss_kib": 77600, "cpu_seconds": 7.61, "ok_per_cpu_second": 288, "ok_per_second": 731, "idle_rss_kib": 10928} +{"requests_per_second": 23644, "completed": 70935, "2xx": 70935, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 2560, "p99_us": 3456, "max_us": 4352, "server": "pure-serve", "workload": "get 64B, 64 conn, close", "round": 2, "probe_ms": null, "rss_kib": 2928, "cpu_seconds": 1.68, "ok_per_cpu_second": 42223, "ok_per_second": 23645, "idle_rss_kib": 2320} +{"requests_per_second": 139261, "completed": 417786, "2xx": 417786, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 448, "p99_us": 544, "max_us": 4608, "server": "pure-serve", "workload": "get 64B, 64 conn, keep-alive", "round": 2, "probe_ms": null, "rss_kib": 2960, "cpu_seconds": 2.99, "ok_per_cpu_second": 139728, "ok_per_second": 139262, "idle_rss_kib": 2320} +{"requests_per_second": 2739, "completed": 8218, "2xx": 8218, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 2816, "p99_us": 3840, "max_us": 6656, "server": "pure-serve", "workload": "get 1MiB, 8 conn, keep-alive", "round": 2, "probe_ms": null, "rss_kib": 3936, "cpu_seconds": 2.99, "ok_per_cpu_second": 2748, "ok_per_second": 2739, "idle_rss_kib": 2320} +{"requests_per_second": 23280, "completed": 69864, "2xx": 69864, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 2560, "p99_us": 4352, "max_us": 19456, "server": "pure-serve-3", "workload": "get 64B, 64 conn, close", "round": 2, "probe_ms": null, "rss_kib": 4400, "cpu_seconds": 1.93, "ok_per_cpu_second": 36199, "ok_per_second": 23288, "idle_rss_kib": 3152} +{"requests_per_second": 150697, "completed": 452094, "2xx": 452094, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 400, "p99_us": 672, "max_us": 4096, "server": "pure-serve-3", "workload": "get 64B, 64 conn, keep-alive", "round": 2, "probe_ms": null, "rss_kib": 4400, "cpu_seconds": 4.5, "ok_per_cpu_second": 100465, "ok_per_second": 150698, "idle_rss_kib": 3152} +{"requests_per_second": 1883, "completed": 5652, "2xx": 5652, "4xx": 0, "5xx": 0, "errors": 0, "p50_us": 3968, "p99_us": 6656, "max_us": 9216, "server": "pure-serve-3", "workload": "get 1MiB, 8 conn, keep-alive", "round": 2, "probe_ms": null, "rss_kib": 6544, "cpu_seconds": 4.79, "ok_per_cpu_second": 1180, "ok_per_second": 1884, "idle_rss_kib": 3152} diff --git a/research/experiments/011-http-frameworks/README.md b/research/experiments/011-http-frameworks/README.md index 2b21595..5c96200 100644 --- a/research/experiments/011-http-frameworks/README.md +++ b/research/experiments/011-http-frameworks/README.md @@ -5,3 +5,6 @@ axum 0.8.9, drogon 1.9.0을 같은 Raspberry Pi 5(서버 CPU 0–2, 부하 CPU 3, 저장소 ext4 SD)에서 쟀다. 한 줄이 (서버, 작업, 라운드) 하나이며 `ok_per_cpu_second`는 서버 CPU 시간(모든 스레드, user+system) 1초당 성공 응답 수다. + +`2026-09-27-pi5-sd-reads.jsonl`(문서 읽기)과 `2026-09-27-pi5-sd-app.jsonl`(앱)은 같은 방법으로 Pure `a8d6b1b`를 쟀다 +([087](../../../docs/research/087-small-reads-and-idle-memory.md)): 작은 읽기의 네 단계와 OpenSSL을 쓸 때만 매핑하기 뒤다. |
