DEV Community

Cover image for How We Reached 4.3 Million QPS for MySQL and PostgreSQL workloads on a Single Readyset Node
ReadySet
ReadySet

Posted on

How We Reached 4.3 Million QPS for MySQL and PostgreSQL workloads on a Single Readyset Node

A single Readyset node now serves 4.3 million queries per second, more than twice what we measured with PostgreSQL and almost three times what we measured with MySQL on the same server.

We got there by profiling the serving path, finding the bottlenecks, and measuring again. The full post walks through exactly what changed: how we located the contention in the Tokio runtime, swapped SipHash for ahash on the hot paths, fixed several costs that had been hidden, and kept profiling until CPU cost per query dropped from 45.7µs to 21.7µs. At full throughput, most of the CPU now goes into the kernel network stack rather than the cache lookup, which points to where the next ceiling is.

Compute keeps getting more expensive and AI workloads are competing for the same CPUs, memory, and networking your database depends on. Serving repeated reads from Readyset keeps that load off the database, so its CPU stays free for writes, cache misses, and the queries that actually need the execution engine, and you get more out of the hardware you already have.

Read the full article here.

Top comments (0)