RSALv2 是由 Redis Ltd. 创建的一种许可的、非 copyleft 的许可协议,允许用户“使用、复制、分发、提供和准备软件的派生作品”,并且只有两个主要的限制。您不得
RSALv2 不是开源许可协议。
SSPLv1 是 MongoDB 创建的一种源码可用许可协议,允许自由和不受限制地使用、修改和再分发,但有一个简单的要求:如果您将产品作为服务提供给他人,您还必须根据 SSPL 公开您所做的任何修改以及您的管理层的源代码。
SSPLv1 基于 GPLv3,被认为是 copyleft 许可协议。这意味着如果您使用源代码并创建派生作品,这些派生作品也必须在 SSPL 下获得许可并公开发布。有关更多信息,请查阅此 MongoDB 常见问题。
SSPLv1 不是开源许可协议。
AGPLv3 是自由软件基金会推出的一种开源许可协议,专为在网络上运行的代码而设计,要求用户在分发时公开完整的源代码和任何修改
AGPLv3 是 copyleft 许可协议。这意味着如果您使用源代码并创建派生作品,这些派生作品也必须在 AGPLv3 下获得许可并公开发布。有关更多信息,请查阅此自由软件基金会 常见问题。
AGPLv3 是经 OSI 批准的开源许可协议。
Redis 开源版中的 Redis 8 及更高版本在我们的三联许可下提供,这使我们能够同时提供源码可用和开源软件。我们的三联许可包括 RSALv2、SSPLv1 和 AGPLv3。
RediSearch、RedisJSON、RedisTimeSeries 和 RedisBloom 现在作为 Redis 开源版的组成部分包含在内,并受相同的三联许可约束。从 Redis 8 开始,所有包含的模块的版本号与它们所包含的 Redis 开源版的版本号相同。
Redis 开源版 7.2.x 及更早版本仍受 BSD3 许可约束。Redis Community Edition 7.4.x 至 7.8.x 仍受 RSALv2/SSPLv1 双重许可约束。
Redis Ltd. 创建的某些 Redis 模块(例如,RediSearch、RedisJSON、RedisTimeSeries 和 RedisBloom)也随着 Redis 8 的普遍可用性而获得了 RSALv2、SSPLv1 和 AGPLv3 的三联许可。
请在下表中阅读更多关于完整版本历史的信息。
版本 | 7.2 及更早版本 | 7.4 | 8+ |
称为 | Redis | Redis Community Edition | Redis 开源版 |
许可 | BSD-3-Clause | RSALv2 or SSPLv1 | RSALv2 or SSPLv1 or AGPLv3 |
Redis Insight 和 Redis for VS Code 是可视化工具,可让您探索数据、设计、开发和优化您的应用程序,同时也是 Redis 教育和入门的平台。Redis Insight 特别集成了 Redis Copilot,这是一个自然语言 AI 助手,可改善使用数据和命令时的体验。
Redis Insight 和 Redis for VS Code 都根据商业许可提供给付费的 Redis 客户。社区用户和非付费个人在 SSPLv1 许可下使用这些工具。
Redis Ltd. 正在为其 Redis 开源版产品添加第三种许可选项。除了 SSPLv1 和 RSALv2 之外,用户现在还可以选择免费且经 OSI 批准的开源 AGPLv3 许可。此更新自 Redis 8 全面可用版本发布时生效。这并非许可协议更改,而是添加了一个选项,旨在为 Redis 社区提供更大的灵活性。
一些社区成员对我们 2024 年 3 月将许可更改为双重许可 RSALv2 和 SSPLv1 感到沮丧,这两种许可都不是经 OSI 批准的许可。我们的许可更改是对托管服务提供商的回应,这些提供商在 BSD3 许可下使用了 Redis 7.2 及更早版本,但贡献有限。许可更改迫使这些提供商面临一个选择——根据 SSPLv1 许可分享其源代码,或不再使用 Redis。有些提供商选择了不再使用。
引用我们 CEO 在 2024 年 3 月的博客文章:“提供与 Redis 竞争性产品的组织将不再被允许根据任何一种双重许可免费使用 Redis 源代码的新版本。如果您正在构建利用 Redis 但不直接与 Redis 本身竞争的解决方案,则不受影响。”
在许可更改后的一年里,Redis 能够更快地进行创新,并且很高兴能够再次在经 OSI 批准的许可下提供 Redis 开源版。
BSD3 许可和 AGPLv3 许可代表了开源许可的不同方法。BSD3 是一种宽松许可,允许用户几乎可以使用代码做任何事情,包括在专有软件中使用,只要他们保留版权声明和免责声明即可。相比之下,AGPLv3 是一种 copyleft 许可,要求任何修改后的版本都必须在相同的条款下分发,并额外要求必须向通过网络与软件交互的用户提供源代码。这个“网络条款”是 AGPLv3 的标志性特征,专为确保 Web 应用程序用户能够访问源代码而设计。
我们目前没有计划更改或增加当前的 Redis 开源版许可配置。由于我们更改许可为 RSALv2/SSPLv1 的主要动机现已成功实现,我们可以更好地与 Redis 社区的期望保持一致。在选择 AGPLv3 之前,我们投入了大量时间研究不同的许可并分析市场动态。其他公司也将 AGPLv3 作为其社区的选项之一。
让我们明确一点:我们计划将 Redis 开源版保持在 AGPLv3 许可下,因为我们认为此许可符合我们的商业模式,并且许可的稳定性对社区至关重要。我们认识到社区是 Redis 的基石,我们将永远保持这种方式。
简短的回答是:很可能不会。
如果您正在从 Redis Community Edition(7.4.x 或更高版本)或从 Redis Stack 切换到 Redis 8,答案很简单:不会。
如果您正在从较早的 Redis 开源版本(7.2 或更早)切换,并且按原样使用 Redis 提供的代码或构建件,答案同样简单:不会。
如果您正在从较早的 Redis 开源版本(7.2 或更早)切换,使用了修改后的代码,并且将其作为网络服务器提供,则这些服务器的运营者需要向该服务器的用户提供在该服务器上运行的修改后版本的源代码。
此更改不影响根据商业许可使用我们的 Redis Cloud 或 Software 产品的客户和合作伙伴。
Redis Ltd. 是 Redis 背后的公司。我们作为公司的主要使命是致力于为了 Redis 社区的利益而进一步发展 Redis。Redis 没有利益冲突。我们为 Redis 设定愿景并执行它。没有其他实体像我们对 Redis 那样重视和投资于类似 Redis 的产品。我们专注于让 Redis 更高性能、更具可扩展性、更用户友好和更具创新性。我们不断看到分支版本和模仿者复制我们创新和 API 的部分内容,但他们通常比我们落后很多个月甚至几年。
我们的投资范围不仅限于 Redis 开源版,还包括 Redis 生态系统。我们确保其他仓库中的所有开发者工具和资源完全支持我们的最新创新。这包括我们的官方 Redis 客户端库、Redis Insight、Redis Copilot 和 Redis for VS Code。当然,我们还维护官方 Redis 文档。
我们也支持我们的社区。每当我们推出新功能时,我们都会通过 Redis Insight 互动指南和教程帮助他们入门,在专门的 Discord 频道上支持我们的社区,非常关注 Github 上的社区请求,并在 Stack Overflow 和 Reddit 上帮助社区成员。我们的官方文档不仅涵盖 Redis API,还涵盖所有客户端库 API。
如需进一步澄清,请通过以下方式联系我们:[email protected]。
产品 | 版本 | 许可与条款 |
Redis(开源版) | <= 7.2 | BSD-3-Clause |
Redis Community Edition | 7.4 | RSALv2 or SSPLv1 |
Redis 开源版 | >= 8.0.0 | RSALv2 or SSPLv1 or AGPLv3 |
Redis Stack | <= 6.2.4 | RSALv1 |
Redis Stack | >= 6.2.6 | RSALv2 or SSPLv1 |
Redis Software | 任何 | 见 https://redis.ac.cn/software-subscription-agreement/ |
Redis 数据集成 | 任何 | 与 Redis Software 相同 |
Redis Cloud | 任何 | 见 https://redis.ac.cn/legal/cloud-tos/ |
模块 | 版本 | 许可与条款 |
RediSearch | <= 1.2 | AGPLv3 |
RediSearch | >= 1.4 to <= 1.4.3 | Apache v2.0 modified with Commons Clause |
RediSearch | >= 1.4.4 to <= 2.4 | RSALv1 |
RediSearch | >= 2.6 to <= 2.10 | RSALv2 or SSPLv1 |
RedisJSON | <= 1.0.2 | AGPLv3 |
RedisJSON | 1.0.3 | Apache v2.0 modified with Commons Clause |
RedisJSON | >= 1.0.4 to <= 2.2 | RSALv1 |
RedisJSON | >= 2.4 to <= 2.8 | RSALv2 or SSPLv1 |
RedisBloom | < 2.0 | AGPLv3 |
RedisBloom | >= 2.0 to <= 2.2 | RSALv1 |
RedisBloom | >= 2.4 to <= 2.8 | RSALv2 or SSPLv1 |
RedisTimeSeries | <=1.6 | RSALv1 |
RedisTimeSeries | >=1.8 to <= 1.12 | RSALv2 or SSPLv1 |
RedisGraph | < 1.0.14 | Apache v2.0 modified with Commons Clause |
RedisGraph | >= 1.0.14 to <= 2.8 | RSALv1 |
RedisGraph | >= 2.10 | RSALv2 or SSPLv1 |
RedisGears | <= 1.2 | RSALv1 |
RedisGears | >= 2.0 | RSALv2 or SSPLv1 |
工具 | 版本 | 许可与条款 |
Redis Insight | < 2.0 | 见 https://redis.ac.cn/legal/redis-insight-license-terms/ |
Redis Insight | >= 2.0 | SSPLv1 |
Redis for VS Code | 任何 | SSPLv1 |
客户端与库 | 版本 | 许可与条款 |
redis-py | 任何 | MIT |
redis-vl-python | 任何 | MIT |
NRedisStack | 任何 | MIT |
ioredis | 任何 | MIT |
node-redis | 任何 | MIT |
jedis | 任何 | MIT |
lettuce | 任何 | MIT |
redis-rb | 任何 | MIT |
hiredis | 任何 | BSD-3-Clause |
go-redis | 任何 | BSD-2-Clause |
rueidis | 任何 | Apache v2.0 |