Pular para o conteúdo
Valkey 9.1 chega com reforço de segurança, desempenho e novas funcionalidades

Valkey 9.1 chega com reforço de segurança, desempenho e novas funcionalidades

Versão 9.1 do Valkey traz controle de acesso por banco, TLS avançado, logs em JSON, 2,1 MiR/s e novos comandos como HGETDEL e MSETEX.

A comunidade Valkey anunciou a disponibilização da versão 9.1.0, que traz melhorias significativas nas áreas de segurança, observabilidade, desempenho, eficiência e ferramentas de gerenciamento. Mais de oitenta colaboradores participaram da construção desse release, que substitui a série 9.0 e amplia recursos já presentes no banco de dados em memória.

Segurança

Controle de acesso por banco de dados

A nova ACL permite definir permissões de comandos e chaves por banco de dados, facilitando o isolamento em ambientes multi‑tenant. Exemplo de criação de usuário com acesso restrito aos bancos 0 e 1:

ACL SETUSER app-user on >secretpass +@all ~* db=0,1

Após a autenticação, o usuário pode operar no banco 0, mas recebe erro ao tentar acessar o banco 2.

Lua como módulo

O mecanismo de scripts Lua foi desacoplado do núcleo e transformado em módulo. Isso reduz a superfície de ataque e possibilita desabilitar o recurso quando não for necessário. O comando INFO agora exibe a seção Scripting Engines listando os módulos carregados.

Melhorias no TLS

  • Exibição da data de expiração dos certificados via INFO.
  • Reload automático de certificados em background, permitindo rotação sem downtime.
  • Suporte a autenticação mTLS usando SAN URIs.

Observabilidade

Métricas de uso das threads

Novas métricas cumulativas para a thread principal e as threads de I/O ajudam a distinguir entre alta utilização real e loops ociosos que inflavam o uso de CPU.

Logs em JSON

Com a diretiva log-format json no arquivo valkey.conf, os logs são emitidos como objetos JSON individuais, prontos para ingestão em ferramentas como Elastic, Splunk ou Loki.

log-format json

Exemplo de saída JSON:

{"pid":14500,"role":"primary","timestamp":"14 May 2026 14:13:02.921","level":"notice","message":"Valkey is starting"}

Desempenho

Valkey 9.1 atinge 2,1 milhões de requisições por segundo (payload de 512 bytes, 9 threads de I/O e pipeline de 10 comandos). Destaques de otimização:

  • Novo modelo de threads de I/O – até 17 % de ganho de throughput.
  • Operações em StreamsXRANGE e XREVRANGE ficam 30 % mais rápidas.
  • GETs de strings – aumento de até 30 % ao elevar o limite de tamanho de embed.
  • Sorted Sets – consultas como ZRANGEBYSCORE e ZRANGEBYLEX recebem otimizações de skiplist.
  • Cache de respostas do comando COMMAND – reduz o tempo de estabelecimento de conexão.
  • Uso de hardware clock habilitado por padrão – melhora GET/SET em até 3 %.

Os resultados completos podem ser visualizados nos Valkey Performance Dashboards.

Eficiência de memória

  • Strings – otimizações de ponteiro reduzem até 20 % o consumo para valores menores que 128 bytes.
  • Sorted Sets – otimizações de skiplist diminuem o uso de memória em até 10 %.
  • Rehashing – aprimoramento do algoritmo interno reduz latência durante expansão de tabelas hash.
  • Exclusões em massa – pausa o redimensionamento da hash durante SREM, ZREM e HDEL, acelerando a remoção em lote.
  • Criação de réplicas com AOF – reutiliza o RDB recebido, evitando a geração de snapshot adicional.

Novos comandos

HGETDEL

Recupera e remove campos de um hash em uma única operação, ideal para padrões de fila.

HSET job:42 status "pending" payload '{"action":"send_email"}' retries "3"
HGETDEL job:42 FIELDS 2 status payload

MSETEX

Define múltiplas chaves com o mesmo TTL em um único comando, com suporte a NX.

MSETEX 3 session:abc "user:1" session:def "user:2" session:ghi "user:3" EX 3600

CLUSTERSCAN

Varre todas as chaves de um cluster de forma unificada, eliminando a necessidade de varrer cada nó separadamente.

CLUSTERSCAN 0 MATCH "session:*"

Ferramentas aprimoradas

  • CLI – parâmetro --cluster-use-atomic-slot-migration permite migração atômica de slots durante rebalanceamento ou reshard.
  • valkey-benchmark – inclui distribuição de RPS, além de novos parâmetros --warmup e --duration para controle fino dos testes.

Contribuições

Mais de 80 colaboradores participaram da versão 9.1. A lista completa de mudanças está disponível nas notas de lançamento do GitHub: 9.1.0‑rc1 e 9.1.0‑rc2.

A comunidade é incentivada a testar o Valkey 9.1, reportar feedback e contribuir para as próximas versões.

Via valkey.io. Você pode conferir o post original em inglês:

Valkey 9.1 delivers improvements in security, performance, and more

Por · Última atualização: