有关最新信息,请阅读 RSALv2 + SSPL 许可证博客。
早在 2018 年 8 月初,Redis 是最早意识到当前开源许可方案在云提供商使用方面存在缺陷的开源公司之一。我们希望确保开源公司能够继续为其项目做出贡献,同时仍然在云时代保持可持续的业务。这就是我们将其 Redis 模块 的许可证从 AGPL 更改为用 Commons Clause 修改的 Apache2 的原因。
这对我们来说不是一个容易的举动,而且我们可能没有足够清楚地传达这一变化。这导致有些人错误地认为 Redis 核心 已变为专有,而事实并非如此(请参阅更多 信息)。
但是,随着时间的推移,其他备受尊敬的开源公司,如 MongoDB 和 Confluent,为开源许可创建了他们自己的现代变体方案。每家公司都采取了不同的方法,但所有公司都共享同一个目标——阻止云提供商获取由其他人开发的成功的开源项目,将它们打包成专有服务,并利用其市场力量来产生可观的收入流。
自去年夏天的公告以来,我们一直在以与管理其他开源项目相同的方式管理我们的 Redis 模块项目。我们公开透明的方式帮助大多数社区成员接受了许可证变更。某些大型企业甚至更喜欢它,而不是我们之前用于这些模块的 AGPL。在此期间,我们还收到了来自多个用户的真诚反馈,关于我们如何进一步改进许可证以有利于开发人员的需求。
我们确定了三个需要解决的领域
考虑到所有这些因素,以及与社区成员进行了多次讨论后,我们决定将 Redis 模块的许可证更改为 Redis 源代码可用许可证 (RSAL)。
RSAL 是 Redis 为运行在开源 Redis 之上的某些 Redis 模块创建的 软件许可证。对于绝大多数用户,RSAL 授予与宽松开源许可证等效的权利。使用 RSAL,开发人员可以使用软件;修改源代码;将其与应用程序集成;以及使用、分发或出售其应用程序。唯一的限制是应用程序不能是数据库、缓存引擎、流处理引擎、搜索引擎、索引引擎或 ML/DL/AI 服务引擎。
有关更多信息,请参阅我们的 详细常见问题解答。
有了 RSAL,Redis 许可模式如下所示
此更改对 Redis 核心许可证没有任何影响,Redis 核心许可证一直以来都已并将在未来一直根据 3-Clause-BSD 许可。与许多其他开源数据库公司不同,我们建立了一个专门的团队(由 Redis 的创建者 Salvatore Sanfilippo 领导),以完全独立的方式管理 Redis 核心。此外,我们选择不通过将核心组件移至闭源代码来限制开源 Redis 的功能。因此,开源 Redis 包含运行分布式数据库系统所需的所有要素——复制、自动故障转移、数据持久性和集群。
这种开放式方法有时会与我们的商业利益背道而驰,因为云提供商无需付出太多努力即可提供可行的 Redis 服务。但我们拥有一个更大的愿景,即帮助现代应用程序为其用户提供即时体验。保证端到端即时应用程序响应时间的唯一方法(如今被认为是低于 100 毫秒的任何时间)是确保您的数据库始终如一地以不到 1 毫秒的速度响应应用程序请求。当然,我们相信只有一个数据库可以做到这一点——那就是 Redis!
最近,我们看到一些云提供商对如何与开源供应商合作有了不同的想法。我们相信那些构建了正确协作基础设施的云提供商最终将从开源项目中获益最多。