Percona 在 Redis 改许可后推出透明代理层,让现有应用无需改代码即可切换到开源替代品 Valkey。
2024 年 Redis 更改许可证时,用专有的、源码可用的替代方案替换了其宽松的 BSD 许可证,此举引发了社区的重大分裂。短短几天内,Linux 基金会便推出了 Valkey,这是一个开源分支。
尽管 Redis 随后在 2025 年再次改变路线,添加了左版 AGPLv3 开源许可证作为选项,但 Valkey 已经为那些希望获得宽松许可项目并拥有独立治理的组织开辟了自己的道路。
在此期间发生了很多事情:Valkey 着手降低内存需求,引入了新的集群管理和访问控制功能,最近还开始使用 AI Agent 来协助维护工作,如修复的后向移植。
但对于部分 Redis 用户来说,至少还有一个重大的迁移障碍。
对于不熟悉 Redis 的人来说,它是一个内存数据存储,广泛用于缓存和其他需要快速访问的工作负载。许多应用程序构建时将 Redis 视为单一实例,而将这些应用迁移到分布式 Valkey Cluster 可能意味着需要修改代码以处理多节点、路由以及某些命令行为的差异。商业 Redis 产品和部分云服务通过在应用与底层集群之间放置代理层来规避这一问题,但希望自行运行 Valkey 的公司一直缺乏等效的选项。
因此 Percona 现在正试图用 Valkey-proxy 填补这一空白——这是一个开源代理,允许现有应用连接到 Valkey Cluster 而无需重写代码。
Percona 是一家开源数据库软件和服务公司,支持 MySQL、PostgreSQL 和 MongoDB 等技术。它也是 Valkey 项目的支持公司之一,其他支持方还包括 AWS、Google Cloud 和 Oracle 等云巨头。
在 Linux 基金会于布拉格举办的 Open Source Summit Europe 大会期间,Percona Redis/Valkey 生态系统总经理 Kyle Davis 在接受 The New Stack 采访时表示,在迁移到集群化 Valkey 部署之前必须重写应用,这是阻碍更广泛采用的最后一个重大障碍之一。
"Davis 告诉 The New Stack:"目前确实没有真正好的开源解决方案。
"所以一直存在这个缺口。"
值得一提的是,市场上确实存在其他代理。Davis 以 Envoy 为例,但表示它并不能完全理解 Valkey 协议,而且其处理连接的方式意味着它无法支持 Valkey 的全部功能。
这使得一些公司陷入了两难境地:一方面是围绕单一 Redis 实例构建的旧应用,另一方面是随着业务增长他们需要的集群化 Valkey 部署。Valkey-proxy 正是为弥合这一差距而设计的。
"现在我们能够触达一整层此前没有好选择的应用,"Davis 补充道。
Percona 已经在内部开发了 Valkey-proxy 的第一个版本,但计划是将其移入 Valkey 项目,然后再向更广泛的社区开放开发。
"从那里,我们将从 Percona 的客户、其他地方的客户和独立开发者那里获得大量贡献,"Davis 说。
当被问及 AWS 等超大规模厂商是否也可能做出贡献时,Davis 表示"有可能",但补充说很难预测,因为他们通常有自己的工具直接绑定到自己的服务。
这使得 Valkey-proxy 与管理自己基础设施的组织尤其相关,包括那些在本地运行的组织。Davis 表示,潜在用户群从资源有限的小公司,到有严格合规要求的大型金融服务机构——这些企业可能需要更好地控制其数据基础设施的运行位置和方式。
此外,该代理还可以为 Valkey 项目提供一个随时间添加其他能力的场所。
"填补这个缺失的缺口让我们有了更大的灵活性,现在我们可以开始用不同的方式做事了。"
"Davis 继续说道:"它提供了一个解耦层,未来我们可以将其他组件构建进去。
"填补这个缺失的缺口让我们有了更大的灵活性,现在我们可以开始用不同的方式做事了。"
不过目前,重点是让项目落到用户手中。Percona 在 9 月底获得了将 Valkey-proxy 纳入 Valkey 项目的批准,目前正在将代码从私有仓库移入公共项目。
目标是在 10 月底之前让所有源代码公开可用,12 月发布候选版本,2027 年初正式发布。
Davis 表示,在此期间将非常重要,因为用户开始用他们自己的应用测试代理时会发现边缘情况。Freshworks 将是首批测试者之一,Davis 表示该公司已经作为早期用户和设计合作伙伴与 Percona 在 Valkey-proxy 上展开合作,帮助在开发继续进行中发现问题。
"这将是一个很好的测试案例,"他补充道。