dragonflydb/dragonfly

A modern replacement for Redis and Memcached

What it solves

Dragonfly is a high-performance in-memory data store designed to replace legacy systems like Redis and Memcached. It addresses the limitations of single-threaded architectures by scaling vertically to utilize modern multi-core CPUs, significantly increasing throughput and reducing the resource footprint required for the same workload.

How it works

Dragonfly employs a "shared-nothing" architecture, partitioning the keyspace into shards managed by individual threads to eliminate contention. It uses a transactional framework based on the VLL lock manager redesign to ensure atomicity for multi-key operations without relying on mutexes or spinlocks. For data storage, it implements a hashtable based on the "Dash" scalable hashing design, which enables efficient record expiry, a zero-overhead cache eviction algorithm, and a fork-less snapshotting process.

Who it’s for

It is built for developers and organizations running modern cloud application workloads that require an ultra-fast, cost-efficient in-memory store with full compatibility for Redis and Memcached APIs.

Highlights

  • High Throughput: Capable of reaching up to 25X the throughput of single-process Redis, with benchmarks showing up to 10M-15M QPS in pipeline mode.
  • API Compatibility: Fully compatible with Redis and Memcached APIs, requiring no code changes for adoption.
  • Resource Efficiency: Can run on up to 80% fewer resources for equivalent workloads and is more memory efficient during snapshotting.
  • Built-in Tooling: Includes a native HTTP console and Prometheus-compatible metrics for monitoring and management.

Related

  • Project
  • Project
  • Project
  • Project
  • Project