Valkey

Updated 5 interview angles 3 min read source
On this page5
  1. What happened
  2. What it means practically
  3. Choosing
  4. Everything else transfers
  5. Interview angle

Valkey

The Redis fork. Worth knowing because the licence change is a genuine interview topic — it tests whether you follow the ecosystem, not just the API.

What happened

In March 2024 Redis Inc. relicensed Redis from BSD to a dual RSALv2 / SSPLv1 model. Both are source-available rather than open source: they restrict offering Redis as a managed service.

The Linux Foundation forked Redis 7.2.4 — the last BSD-licensed version — as Valkey. AWS, Google Cloud, Oracle and Ericsson backed it immediately. Managed services largely moved: AWS ElastiCache and MemoryDB now offer Valkey, typically at a lower price than their Redis equivalents.

Redis Inc. later added AGPL as an option, but by then the fork had momentum and adoption.

What it means practically

Valkey is API-compatible with Redis 7.2. Existing clients, commands and data structures work unchanged. For most applications, switching is a connection-string change.

python
# the redis-py client works against Valkey
import redis
r = redis.Redis(host="valkey.internal", port=6379)

The divergence since the fork:

Redis (8.x) Valkey (8.x)
Licence RSALv2 / SSPLv1 / AGPL BSD
Governance Redis Inc. Linux Foundation
Performance focus multi-threaded I/O, async command execution
Cloud support available AWS, GCP, Oracle default
Modules ecosystem RedisJSON, RediSearch etc. separate module story

Valkey’s headline technical work has been multithreading the I/O path, giving significant throughput gains over single-threaded Redis on multi-core machines. Redis 8 has pursued its own performance work in parallel.

The one thing worth checking before a migration is whether you use anything the fork does not carry:

bash
valkey-cli INFO server | grep -E 'valkey_version|redis_version'
# valkey_version:8.1.1
# redis_version:7.2.4        <- compatibility level it reports

# empty means no Stack dependency
valkey-cli MODULE LIST

MODULE LIST is the real gate. Empty output means the migration is a connection-string change; anything listed there — RediSearch, RedisJSON, RedisTimeSeries — is the lock-in, and you need an equivalent before moving.

Choosing

  • New project on a cloud provider → Valkey. Cheaper on managed services, permissively licensed, actively developed.
  • Existing Redis deployment → no urgency. It still works; the licence only bites if you’re reselling it as a service.
  • Dependent on Redis Stack modules (RediSearch, RedisJSON, vector search) → check equivalents before switching. This is the main lock-in.
  • Redis Enterprise features (active-active geo-replication, tiered storage) → stay with Redis.

The honest position: for a cache — which is the overwhelmingly common use — they’re interchangeable, and the decision is licence and price. For a Redis-Stack-dependent search or vector workload, the modules matter more than the core.

Everything else transfers

Data structures, persistence (RDB/AOF), replication, cluster mode, eviction policies, pipelining, Lua scripting, Streams — all identical to Redis 7.2 semantics. The material in Redis applies directly, including cache stampede handling and the Redlock critique.

Which is the useful framing for an interview: this is a licensing and governance story, not a technical one. Don’t overstate the differences.

Interview angle 5

  • “What is Valkey and why does it exist?” — a Linux Foundation fork of Redis 7.2.4, created after Redis Inc. moved to source-available licensing (RSALv2/SSPLv1) in 2024. Backed by AWS, Google and Oracle, and now the default on several managed cache services.
  • “Would you use Valkey or Redis?” — for a plain cache they’re interchangeable; pick on licence and managed-service price, which usually favours Valkey. Stay on Redis if you depend on Redis Stack modules or Enterprise features.
  • “Do you need to change your code?” — no. Valkey is API-compatible with Redis 7.2, so existing clients and commands work. It’s typically a connection-string change.
  • “Has Valkey diverged technically?” — yes, notably multi-threaded I/O for higher throughput on multi-core hosts. Redis 8 has its own performance track. The gap is real but not the reason most people choose one.
  • “Why did the licence change matter so much?” — SSPL-style terms restrict offering the software as a managed service, which directly affects cloud providers. That’s why the hyperscalers backed a fork rather than accepting the new terms.