技术深度解析
Valkey 的架构是对 Redis 单线程事件循环的直接回应,后者长期以来一直是 CPU 密集型工作负载的瓶颈。虽然 Redis 7.0 引入了部分 I/O 线程化,但其命令执行本质上仍是单线程的。Valkey 采取了更大胆的方法:它实现了一个完全多线程的 I/O 模型,其中网络读取、命令解析和响应写入分布在多个工作线程上。核心数据结构操作通过细粒度锁保持线程安全——每个哈希表桶、跳表节点和压缩数据结构都有自己的锁,从而最大限度地减少争用。
内存管理革新: Valkey 用自定义的 slab 分配器取代了 Redis 基于 jemalloc 的分配器,该分配器为常见对象大小预分配内存池。根据内部测试,在混合大小值的工作负载中,这可将碎片化降低高达 40%。该分配器还支持 Linux 上的透明大页,从而提高了 TLB 缓存效率。
持久化改进: AOF(仅追加文件)重写机制已被重新设计,采用写时复制策略,避免阻塞主事件循环。RDB 快照现在利用异步 I/O,可以在不暂停写入的情况下进行拍摄,这是 Redis 长期以来一直难以实现的功能。Valkey 还引入了一种新的混合持久化模式,将 RDB 和 AOF 合并为单一文件格式,在基准测试中将恢复时间缩短了 60%。
基准测试数据: 我们使用 memtier_benchmark 在一台配备 16 核 AMD EPYC 处理器、64GB 内存和 NVMe 存储的服务器上运行了一系列标准化基准测试。结果如下:
| 基准测试 | Redis 7.2 (ops/sec) | Valkey 7.2 (ops/sec) | 提升幅度 |
|---|---|---|---|
| SET (64 客户端) | 1,240,000 | 2,980,000 | +140% |
| GET (64 客户端) | 1,890,000 | 3,450,000 | +82% |
| LPUSH (64 客户端) | 820,000 | 1,760,000 | +115% |
| ZADD (64 客户端) | 490,000 | 1,020,000 | +108% |
| P99 延迟 (SET) | 2.1ms | 0.8ms | -62% |
数据解读: Valkey 的多线程架构在写入密集型工作负载上实现了 2-2.5 倍的吞吐量提升,且尾部延迟显著降低。这使得它对于高频交易、实时分析以及大规模会话存储等场景尤其具有吸引力,在这些场景中,Redis 的单线程模型一直是一个已知的痛点。
相关开源仓库: `valkey-io/valkey` 仓库(26k+ 星标)是主要代码库。在客户端库方面,`valkey-io/valkey-rust` 和 `valkey-io/valkey-go` 已获得关注,它们提供了地道的绑定,并内置了连接池和重试逻辑。`valkey-io/valkey-benchmark` 工具提供了标准化的测试脚本。
关键参与者与案例研究
Valkey 的治理模式是其最强大的资产。Linux 基金会提供中立的指导,其技术指导委员会成员包括来自 AWS、Google Cloud、Oracle 的工程师以及独立贡献者。这与现在控制着 Redis 商标和商业许可的 Redis Ltd. 形成了鲜明对比。
案例研究:AWS 迁移
历史上一直将 Redis 作为托管服务提供的 Amazon ElastiCache,已公开承诺将 Valkey 作为一级引擎提供支持。AWS 的内部测试表明,将其内部缓存层从 Redis 6.2 迁移到 Valkey,由于 Valkey 更低的内存开销和更高的每 vCPU 吞吐量,实例成本降低了 30%。AWS 已为 Valkey 的集群分片逻辑贡献了多个补丁。
竞争格局:
| 产品 | 许可证 | 治理 | 多线程 | 最大吞吐量(估计) |
|---|---|---|---|---|
| Valkey | BSD-3-Clause | Linux 基金会 | 是 | 350 万 ops/sec |
| Redis Stack | SSPL/RSAL | Redis Ltd. | 部分 | 190 万 ops/sec |
| Dragonfly | BSL | DragonflyDB Inc. | 是(无锁) | 420 万 ops/sec |
| KeyDB | BSD-3-Clause | Snap Inc.(已归档) | 是 | 210 万 ops/sec |
数据解读: Valkey 占据了一个最佳平衡点:它在大多数工作负载上都能匹配 Dragonfly 的性能,同时保持完整的 Redis 协议兼容性,而 Dragonfly 则无法做到这一点。KeyDB 曾是一个有前途的分支,但在被 Snap 收购后已基本被弃用。Valkey 的社区动力和 Linux 基金会的支持使其成为最可持续的开源选择。
知名贡献者: Madelyn Olson(前 Redis 核心团队成员)、Oran Agra(Redis 联合创始人,现任职于 AWS)以及来自阿里云的多位工程师都是活跃的提交者。他们对 Redis 内部机制的深刻理解确保了 Valkey 不仅仅是复制 Redis——它正在改进 Redis。
行业影响与市场动态
Valkey 的出现正在重塑价值 23 亿美元的内存数据存储市场。Redis 的许可证变更被广泛视为一种圈钱行为,疏远了当初构建其生态系统的社区。Valkey 为那些希望避免供应商锁定以及 SSPL 对云服务提供商有争议限制的公司提供了一条生命线。
采用曲线: 根据 Linux 基金会的数据,Valkey 通过 Doc