Before moving on, please consider giving us a GitHub star ⭐️. Thank you!
Other languages: 简体中文 日本語 한국어 Português ภาษาไทย
Website • Docs • Quick Start • Community Discord • Dragonfly User Conference • Join the Dragonfly Community
GitHub Discussions • GitHub Issues • Contributing • AI Agents Guide • Dragonfly Cloud
Dragonfly is an in-memory data store built for modern application workloads.
Fully compatible with Redis and Memcached APIs, Dragonfly requires no code changes to adopt. Compared to legacy in-memory datastores, Dragonfly delivers 25X more throughput, higher cache hit rates with lower tail latency, and can run on up to 80% fewer resources for the same-sized workload.
We first compare Dragonfly with Redis on an m5.large instance, which is commonly used to run Redis
due to its single-threaded architecture. The benchmark program runs from another
load-test instance (c5n) in the same AZ using memtier_benchmark -c 20 --test-time 100 -t 4 -d 256 --distinct-client-seed
Dragonfly shows comparable performance:
- SETs (
--ratio 1:0):
| Redis | DF |
|---|---|
| QPS: 159K, P99.9: 1.16ms, P99: 0.82ms | QPS:173K, P99.9: 1.26ms, P99: 0.9ms |
- GETs (
--ratio 0:1):
| Redis | DF |
|---|---|
| QPS: 194K, P99.9: 0.8ms, P99: 0.65ms | QPS: 191K, P99.9: 0.95ms, P99: 0.8ms |
The benchmark above shows that the algorithmic layer inside DF that allows it to scale vertically does not take a large toll when running single-threaded.
However, if we use a slightly larger instance (m5.xlarge), the gap between DF and Redis starts growing.
(memtier_benchmark -c 20 --test-time 100 -t 6 -d 256 --distinct-client-seed):
- SETs (
--ratio 1:0):
| Redis | DF |
|---|---|
| QPS: 190K, P99.9: 2.45ms, P99: 0.97ms | QPS: 279K , P99.9: 1.95ms, P99: 1.48ms |
- GETs (
--ratio 0:1):
| Redis | DF |
|---|---|
| QPS: 220K, P99.9: 0.98ms , P99: 0.8ms | QPS: 305K, P99.9: 1.03ms, P99: 0.87ms |