BlogGuidesWhat is Valkey? The Redis Fork That's Replacing Redis (2025)

What is Valkey? The Redis Fork That's Replacing Redis (2025)

Adrian Silaghi
Adrian Silaghi
December 17, 2025
12 min read
1,669 views
#valkey #redis #cache #in-memory-database #open-source

In March 2024, the open-source community made a bold move: they forked Redis and created Valkey, a truly open-source alternative that preserves Redis' BSD-3-Clause license while adding new features and improvements.

If you're currently using Redis or evaluating in-memory databases, you need to understand what Valkey is, why it exists, and whether it's the right choice for your applications.

What is Valkey?

Valkey is a community-driven, open-source in-memory database forked from Redis 7.2.4. It's 100% Redis-compatible, meaning it's a drop-in replacement for Redis—your existing code, tools, and client libraries work without modification.

Key Facts About Valkey:

  • Forked From: Redis 7.2.4 (March 2024)
  • License: BSD-3-Clause (truly open source)
  • Governance: Linux Foundation project
  • Compatibility: 100% Redis protocol compatible
  • Current Version: 8.0 (January 2025)
  • Backed By: AWS, Google Cloud, Oracle, Alibaba Cloud, Ericsson

Why Was Valkey Created?

To understand Valkey, you need to understand what happened to Redis.

Redis' Licensing Change

In March 2024, Redis Labs changed Redis' license from BSD-3-Clause to a dual-license model:

  • Redis Source Available License (RSALv2)
  • Server Side Public License (SSPLv1)

This change meant Redis was no longer open source by the Open Source Initiative (OSI) definition.

Why This Mattered

The new licenses restricted:

  • Cloud Providers: Can't offer Redis as a managed service without paying Redis Labs
  • Commercial Use: Restrictions on how companies can use Redis in their products
  • Community Contributions: Less incentive to contribute if you don't control the license

The Community Response: Valkey

Within days of the announcement, major tech companies came together to fork Redis and create Valkey:

"We are committed to the open-source community and ensuring Redis remains truly open source. Valkey will always be BSD-3-Clause licensed." — Valkey Announcement, Linux Foundation

Valkey vs Redis: What's the Difference?

Quick Comparison

Feature Valkey Redis (2025)
License BSD-3-Clause (Open Source) RSALv2/SSPLv1 (Source Available)
Governance Linux Foundation Redis Labs (company)
Protocol Compatibility 100% Redis compatible N/A (original)
Current Version 8.0 7.4
Performance Same baseline + improvements Baseline
Community Contributions Active & growing Declining
Cloud Provider Support AWS, GCP, Azure, etc. Requires licensing from Redis Labs

Feature Parity

Valkey maintains 100% compatibility with Redis commands:

# These work identically in Valkey and Redis
SET mykey "Hello"
GET mykey
HSET user:1000 name "John" email "john@example.com"
LPUSH mylist "item1"
ZADD leaderboard 100 "player1"

# All Redis data structures supported
Strings, Hashes, Lists, Sets, Sorted Sets
Bitmaps, HyperLogLogs, Streams, Geospatial

Valkey Improvements Over Redis

Valkey isn't just a fork—it's improving upon Redis:

1. Better Performance

  • Memory Efficiency: 5-10% memory savings in 8.0
  • Faster Replication: Improved sync performance
  • Optimized Commands: Faster SCAN, KEYS, SMEMBERS

2. Enhanced Features

  • Improved Clustering: Better slot migration
  • Enhanced ACLs: More granular permissions
  • Better Monitoring: Additional metrics and stats

3. Active Development

  • Faster Releases: Community-driven development
  • Community Contributions: Thousands of contributors
  • Transparent Roadmap: Public decision-making

Valkey vs Dragonfly: Which Should You Choose?

While Valkey is a Redis fork, Dragonfly is a Redis-compatible rewrite. Here's how they compare:

Feature Valkey Dragonfly
Architecture Single-threaded (Redis model) Multi-threaded
Performance (Single-core) ~100K ops/sec ~100K ops/sec
Performance (Multi-core) ~100K ops/sec (limited) ~2.5M ops/sec (scales)
Memory Efficiency Standard ~30% more efficient
Redis Compatibility 100% ~99% (some edge cases)
Maturity Very mature (Redis codebase) Newer (2022)
Best For Drop-in Redis replacement High-throughput workloads

When to Choose Each

Choose Valkey if:

  • ✅ You want a true Redis replacement with zero code changes
  • ✅ You need 100% Redis compatibility
  • ✅ You value proven stability (Redis codebase)
  • ✅ You prefer open-source governance
  • ✅ Standard Redis performance is sufficient

Choose Dragonfly if:

  • ✅ You need maximum throughput (millions of ops/sec)
  • ✅ You have multi-core servers to utilize
  • ✅ Memory efficiency is critical
  • ✅ You can tolerate minor compatibility differences
  • ✅ Performance is your #1 priority

Migrating from Redis to Valkey

The good news: migrating is trivial. Valkey is a drop-in replacement.

Step 1: Install Valkey

# Ubuntu/Debian
wget https://github.com/valkey-io/valkey/releases/download/8.0.0/valkey-8.0.0.tar.gz
tar xzf valkey-8.0.0.tar.gz
cd valkey-8.0.0
make
sudo make install

# Or use Docker
docker pull valkey/valkey:8.0

Step 2: Copy Your Redis Config

# Your existing redis.conf works as-is
cp /etc/redis/redis.conf /etc/valkey/valkey.conf

# Update paths if needed
sed -i 's/redis/valkey/g' /etc/valkey/valkey.conf

Step 3: Start Valkey

# Start Valkey with your existing config
valkey-server /etc/valkey/valkey.conf

# Or with Docker
docker run -d 
  --name valkey 
  -p 6379:6379 
  -v /etc/valkey/valkey.conf:/etc/valkey/valkey.conf 
  valkey/valkey:8.0 
  valkey-server /etc/valkey/valkey.conf

Step 4: No Application Changes Needed

# Your existing code works without modification
# Python
import redis
r = redis.Redis(host='localhost', port=6379, decode_responses=True)
r.set('key', 'value')

# Node.js
const redis = require('redis');
const client = redis.createClient();
await client.set('key', 'value');

# PHP
$redis = new Redis();
$redis->connect('localhost', 6379);
$redis->set('key', 'value');

# All Redis clients work with Valkey!

Step 5: Migrate Data (Zero Downtime)

# Option 1: Use replication
# Point Valkey to Redis as primary
replicaof redis-host 6379

# Wait for sync to complete
info replication

# Promote Valkey to primary
replicaof no one

# Switch application to Valkey
# Update connection string in your app

# Option 2: Use RDB backup
redis-cli SAVE
cp /var/lib/redis/dump.rdb /var/lib/valkey/dump.rdb
valkey-server /etc/valkey/valkey.conf

Valkey in Production: Real-World Examples

Example 1: Session Storage (Laravel)

# .env (no changes needed!)
REDIS_HOST=valkey.example.com
REDIS_PASSWORD=your_password
REDIS_PORT=6379

# config/database.php (works as-is)
'redis' => [
    'client' => env('REDIS_CLIENT', 'phpredis'),
    'default' => [
        'host' => env('REDIS_HOST', '127.0.0.1'),
        'password' => env('REDIS_PASSWORD', null),
        'port' => env('REDIS_PORT', '6379'),
        'database' => env('REDIS_DB', '0'),
    ],
],

Example 2: Cache Layer (Node.js)

// cache.js
const redis = require('redis');
const client = redis.createClient({
  url: 'redis://valkey.example.com:6379'
});

await client.connect();

// Caching function
async function getUser(userId) {
  const cached = await client.get(`user:${userId}`);
  if (cached) return JSON.parse(cached);

  const user = await db.users.findById(userId);
  await client.setEx(
    `user:${userId}`,
    3600, // 1 hour TTL
    JSON.stringify(user)
  );
  return user;
}

Example 3: Rate Limiting (API)

# Python FastAPI with Valkey
from redis import Redis
from fastapi import FastAPI, Request, HTTPException

redis = Redis(host='valkey.example.com', port=6379)
app = FastAPI()

@app.middleware("http")
async def rate_limit(request: Request, call_next):
    client_ip = request.client.host
    key = f"rate_limit:{client_ip}"

    requests = redis.incr(key)
    if requests == 1:
        redis.expire(key, 60)  # 1 minute window

    if requests > 100:
        raise HTTPException(429, "Rate limit exceeded")

    return await call_next(request)

DanubeData Managed Valkey

At DanubeData, we offer fully-managed Valkey instances alongside Redis and Dragonfly. All are hosted in German data centers with:

  • Latest Valkey 8.0 with automatic updates
  • High Availability: Automatic failover with replica promotion
  • Daily Backups: Automated snapshots with point-in-time recovery
  • Monitoring: Real-time metrics, alerts, and performance insights
  • SSL/TLS: Encrypted connections for security
  • Scaling: Vertical scaling with zero downtime
  • 99.9% Uptime SLA

Valkey Pricing

Plan Memory Storage Price
Cache Micro 256 MB 2 GB €9.99/mo
Cache Small 1 GB 4 GB €19.99/mo
Cache Medium 3 GB 16 GB €49.99/mo
Cache Large 6 GB 32 GB €89.99/mo

All plans include automated backups, monitoring, SSL/TLS, and high availability.

Common Questions About Valkey

Is Valkey production-ready?

Yes. Valkey is built on the proven Redis 7.2 codebase with millions of hours of production testing. Major cloud providers are already offering Valkey as a managed service.

Will my Redis clients work with Valkey?

Yes. Valkey implements the Redis protocol exactly. All Redis clients (redis-py, node-redis, predis, etc.) work without modification.

Can I use Redis modules with Valkey?

Most yes, some no. Open-source Redis modules work. Proprietary Redis Stack modules (RedisJSON, etc.) don't work because they're not open source.

Should I switch from Redis to Valkey?

For new projects: Yes. Valkey ensures you're using truly open-source software with community governance.
For existing projects: Consider switching to avoid future licensing issues and support open source.

What about Redis 7.4+ features?

Valkey is ahead. Valkey 8.0 includes features beyond Redis 7.4, plus community contributions that Redis Labs doesn't accept.

Is Valkey faster than Redis?

Same baseline, some improvements. Valkey 8.0 includes memory and performance optimizations, making it 5-10% more efficient in some workloads.

The Future of Valkey

Valkey has massive momentum:

  • Backing: AWS, Google Cloud, Oracle, Alibaba Cloud committed
  • Adoption: Thousands of companies migrating
  • Development: Active community with monthly releases
  • Innovation: New features not in Redis

The open-source community has spoken: Valkey is the future of Redis-compatible databases.

Conclusion: Should You Use Valkey?

Use Valkey if:

  • ✅ You want a true open-source Redis alternative
  • ✅ You value community governance over corporate control
  • ✅ You want 100% Redis compatibility
  • ✅ You're starting a new project
  • ✅ You want to avoid future licensing issues

Stick with Redis if:

  • ⚠️ You need Redis Stack modules (RedisJSON, etc.)
  • ⚠️ You have specific Redis Enterprise features
  • ⚠️ Migration effort outweighs benefits (for now)

Try Managed Valkey on DanubeData

Want to try Valkey without managing infrastructure? Create a managed Valkey instance in under 60 seconds:

👉 Create Managed Valkey Instance - Starting at €9.99/month

All plans include automated backups, monitoring, high availability, and 99.9% uptime SLA. Try risk-free with hourly billing—cancel anytime.

Or compare with our other cache options:

View complete cache pricing →

Questions about Valkey vs Redis vs Dragonfly? Contact our team for personalized guidance.

Share this article

Ready to Get Started?

Deploy your infrastructure in minutes with DanubeData's managed services.