Repolode
readysettech

readysettech/readyset

A transparent MySQL and Postgres cache that sits in front of your database and keeps cached query results in sync via the replication stream.

Stars
5,298
Forks
166
Open issues
121
Last commit
22 hours ago

What is it?

Readyset is a caching layer that sits between an application and its MySQL or Postgres database. It is wire-compatible with both databases, so existing ORMs and database clients can connect to it without code changes. Frequently run SELECT queries, including complex ones, are served as fast lookups from cached results.

Unlike manually managed caches, Readyset keeps cached results up to date by consuming the database's replication stream, so application code does not need to handle cache invalidation. Cached select statements are incrementally updated as the underlying data changes.

The project is written in Rust and is available as a Docker image, a Linux binary, or an install script. A managed offering, Readyset Cloud, is also mentioned in the project materials.

Key features

  • 01Wire-compatible with MySQL and Postgres, so existing clients and ORMs work unchanged.
  • 02Keeps cached query results in sync automatically using the database replication stream.
  • 03Incrementally updates cached SELECT results as underlying data changes.
  • 04Serves complex SQL reads as in-memory-style key-value lookups.
  • 05Can be installed via Docker, a Linux binary, or a quick install script.

Use cases

  • Speeding up read-heavy web applications without rewriting data access code.
  • Scaling read throughput for a database that is becoming a bottleneck.
  • Caching complex reporting or join queries that are slow against the primary database.

Quick start

  1. 1

    Run the official install script from the README

  2. 2

    Or install with the Docker image from the README

Things to know

  • Licensed under BSL 1.1, which is source-available and converts to Apache 2.0 only after four years.

In collections

Topics

FAQ

What is readyset?
A transparent MySQL and Postgres cache that sits in front of your database and keeps cached query results in sync via the replication stream. Readyset is a caching layer that sits between an application and its MySQL or Postgres database. It is wire-compatible with both databases, so existing ORMs and database clients can connect to it without code changes. Frequently run SELECT queries, including complex ones, are served as fast lookups from cached results.
Is readyset free to use? What license does it have?
readyset is open source under the Other license. Check the license terms before using it in commercial products.
Is readyset still maintained?
Actively maintained. The last commit to readyset was on Nov 7, 2026.
What can I use readyset for?
Speeding up read-heavy web applications without rewriting data access code. Scaling read throughput for a database that is becoming a bottleneck. Caching complex reporting or join queries that are slow against the primary database.
How do I install readyset?
Run the official install script from the README Or install with the Docker image from the README
Where can I get readyset?
The source code and installation instructions are on GitHub: https://github.com/readysettech/readyset

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects