Valkey: O Fork Open-Source do Redis para PME em 2026

Introdução — por que o Valkey existe

Em março de 2024, a Redis Inc. mudou a licença do Redis de BSD-3-Clause (open-source) para SSPL (Server Side Public License) e RSALv2. Isto afecta todas as versões a partir do Redis 7.4: qualquer empresa que ofereça Redis como serviço gerido ou o integre num produto comercial precisa de avaliar implicações legais antes de actualizar.

A resposta da comunidade foi imediata. A Linux Foundation anunciou o Valkey em 27 de março de 2024 — um fork do Redis 7.2.4 sob licença BSD-3-Clause, com apoio de AWS, Google Cloud, Oracle, Ericsson e Snap. O projecto garante continuidade open-source com governança neutra.

ℹ Por que isto importa para PME?

Se a sua PME usa Redis em cache, filas ou sessões, a mudança não afecta o uso interno imediato — mas bloqueia actualizações futuras sem análise legal. O Valkey oferece migração sem fricção, mantendo compatibilidade total com o protocolo RESP e a API existente.

O Valkey 8.0 (setembro 2024) introduziu multi-thread I/O com 3x mais throughput em leitura intensiva. Em 2026, o Valkey está na versão 8.1+ com melhorias de cluster, Active-Active replication e tiered storage (SSD/NVMe para dados menos acessíveis).

Instalar Valkey (Docker, apt, source)

Docker

docker run -d --name valkey -p 6379:6379 \
  -v valkey-data:/data \
  valkey/valkey:8.1 \
  valkey-server --appendonly yes --maxmemory 512mb

docker exec -it valkey valkey-cli ping
# PONG

apt (Debian/Ubuntu)

curl -fsSL https://packages.valkey.io/gpg | sudo gpg --dearmor -o /usr/share/keyrings/valkey.gpg

echo "deb [signed-by=/usr/share/keyrings/valkey.gpg] https://packages.valkey.io/debian noble main" | sudo tee /etc/apt/sources.list.d/valkey.list

sudo apt update && sudo apt install -y valkey
sudo systemctl enable --now valkey-server
valkey-cli ping

⚠ Nome da distro

Substitua noble por bookworm (Debian 12) ou jammy (Ubuntu 22.04). Veja valkey.io/download.

Compilar a partir do código-fonte

sudo apt install -y build-essential tcl libssl-dev
git clone --branch 8.1 --depth 1 https://github.com/valkey-io/valkey.git
cd valkey && make BUILD_TLS=yes -j$(nproc)
sudo make install
sudo mkdir -p /etc/valkey /var/lib/valkey
sudo cp valkey.conf /etc/valkey/
sudo useradd -r -s /usr/sbin/nologin valkey
sudo chown -R valkey:valkey /var/lib/valkey /etc/valkey
sudo valkey-server /etc/valkey/valkey.conf --daemonize yes

Migração Redis → Valkey

O Valkey é um substituição directa: protocolo RESP3, comandos, estrutura de dados, módulos e formato de persistência (RDB/AOF) são idênticos ao Redis 7.2. As bibliotecas cliente (redis-py, ioredis, Jedis, go-redis) funcionam sem alterações.

ℹ Sem alterações de código

Bastam apontar a aplicação para o mesmo hospedeiro e porto. O redis-cli continua a funcionar contra um servidor Valkey.

Migração sem downtime (replica)

# 1. Configurar Valkey como réplica do Redis
echo "replicaof 192.168.1.10 6379" | sudo tee -a /etc/valkey/valkey.conf
sudo systemctl restart valkey-server

# 2. Verificar sincronização
valkey-cli info replication | grep master_link_status
# Esperar: master_link_status:up

# 3. Failover: promover Valkey a mestre
sudo sed -i '/^replicaof/d' /etc/valkey/valkey.conf
sudo systemctl restart valkey-server
valkey-cli dbsize  # mesmo número de chaves

Migração com RDB snapshot

# No Redis: forçar snapshot
redis-cli BGSAVE && sleep 2

# Copiar para Valkey
scp /var/lib/redis/dump.rdb valkey-server:/var/lib/valkey/dump.rdb
sudo systemctl stop valkey-server
sudo rm -f /var/lib/valkey/appendonly.aof*
sudo chown valkey:valkey /var/lib/valkey/dump.rdb
sudo systemctl start valkey-server
valkey-cli dbsize  # verificação

Configuração (AOF/RDB, cache, réplicas)

Persistência AOF + RDB

# RDB snapshots
save 900 1
save 300 10
save 60 10000

# AOF (append-only)
appendonly yes
appendfsync everysec
auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb
aof-use-rdb-preamble yes

ℹ everysec é o padrão recomendado

Perde no máximo 1 segundo de dados em falha, com impacto mínimo em desempenho. always é mais seguro mas reduz throughput 50-80%.

Cache (evicção de memória)

maxmemory 2gb
# Políticas: allkeys-lru | volatile-lru | allkeys-lfu | volatile-ttl
maxmemory-policy allkeys-lru
maxmemory-samples 5

Para cenários mistos (cache + dados persistentes), use volatile-lru para proteger chaves sem TTL.

Réplicas com Sentinel

# valkey.conf (réplica)
replicaof 192.168.1.10 6379
masterauth sua_password
replica-read-only yes
replica-priority 100

# valkey-sentinel.conf
sentinel monitor mymaster 192.168.1.10 6379 2
sentinel auth-pass mymaster sua_password
sentinel down-after-milliseconds mymaster 5000
sentinel failover-timeout mymaster 30000

⚠ Replicação não substitui backup

A replicação protege contra falha de hardware, mas não contra erro humano (apagar chaves propaga para todas as réplicas). Mantenha snapshots RDB em local separado.

Comparação Valkey vs Redis vs KeyDB vs Dragonfly

Característica Valkey Redis 7.4+ KeyDB Dragonfly
Licença BSD-3 (open-source) SSPL + RSALv2 BSL (Snap) BSL 1.1
Governança Linux Foundation Redis Inc. Snap Inc. DragonflyDB Inc.
Compatibilidade RESP 100% (Redis 7.2) Nativo 100% (Redis 6.x) ~95%
Threading Multi-thread I/O (8.0+) Single-thread Multi-thread Shared-nothing
Throughput relativo ~3x vs Redis 7.2 1x (baseline) ~2x ~5-30x
Tiered storage Sim (8.1+) Não Não Sim
Drop-in do Redis Sim N/A Sim Sim
Ideal para PME Sim — licença + perf Só < 7.2 (sem updates) Se Active-Active Se throughput extremo
Ecossistema AWS, Google, Oracle Muito alto Médio Crescimento

ℹ Qual escolher?

Para a maioria das PME, Valkey é a escolha óbvia: licença BSD open-source, governança Linux Foundation, compatibilidade total com Redis 7.2 e desempenho superior. Dragonfly vale a pena se precisa de throughput extremo. KeyDB destaca-se em Active-Active multi-master.

O Valkey representa a continuidade natural do Redis open-source. Para PME que já usam Redis, a migração é transparente, sem custo de licença, e garante acesso a melhorias futuras de performance e segurança.