Redis 更新开源许可证 - 不再支持云供应商提供商业化的 Redis

在这里插入图片描述

原文:Rowan Trollope - 2024.03.20

未来的 Redis 版本将继续在 RSALv2 和 SSPLv1 双许可证下提供源代码的免费和宽松使用;这些版本将整合先前仅在 Redis Stack 中可用的高级数据类型和处理引擎。

从今天开始,所有未来的 Redis 版本都将以开源许可证发布。从 Redis 7.4 版本开始,Redis 将采用 Redis Source Available License (RSALv2) 和 Server Side Public License (SSPLv1) 双许可证。因此,Redis 将不再按照三条款版本的伯克利软件发行(BSD)许可证下进行分发。

从成立的第一天起,Redis 就为支撑现代互联网的应用程序和数据基础设施,提供了性能和简单性的基础。现在,15 年过去了,我们很自豪地为全球的数百万开发者提供支持,支撑着世界每天都依赖的实时应用。我们已经为高级 Redis 模块实施了双许可证,这些模块都在 Redis Stack 发行版中,这一做法得到了社区的热烈欢迎。实际上,超过 50% 的 redis.io 下载量——从 Redis 6 版本开始——都来自 Redis Stack。我们现在认为,将这种许可证扩展到 Redis 本身,将使我们能够继续为用户发展最全面的数据模型、处理引擎和开发者能力。

新的开源许可证让我们能够持续提供宽松的源代码使用权限。我们正在引领 Redis 进入下一个发展阶段,作为一个拥有统一客户端、工具和核心 Redis 产品供应的实时数据平台。Redis 的源代码将继续免费提供给开发者、客户和合作伙伴,通过 Redis 社区版进行分享。未来的 Redis 开源版本将会统一核心的 Redis 和 Redis Stack,包括搜索、JSON、向量、概率数据模型和时间序列数据模型,以一种免费、易用的软件包的形式提供下载。这将使任何人都能轻松地在各种场景中使用 Redis,包括作为一个高性能的键/值和文档存储,一个强大的查询引擎,以及一个用于驱动生成式 AI 应用的低延迟向量数据库。

Redis 的成功带来了一系列独特的挑战。Redis 一直在赞助大部分的开发工作,同时也有一个活跃的开发者社区热衷于做出贡献。然而,Redis 的大部分商业销售都是通过最大的云服务供应商进行的,这些供应商将 Redis 的投资和其开源社区商品化。尽管我们努力支持社区主导的治理模式,也希望保持 BSD 许可证,但同时提供多种软件分发——包括开源、源可用以及为不同的本地和云平台优化的商业软件——这与我们成功推动 Redis 的未来的能力是相矛盾的。

根据新的许可证,托管 Redis 服务的云服务供应商,将不再被允许免费使用 Redis 的源代码。例如,云服务供应商只有在同意与 Redis(Redis 代码的维护者)的许可证条款后,才能提供 Redis 7.4。这些协议将支持现有的集成解决方案,并提供对即将到来的 Redis 创新的全面访问。

“我们期待继续合作,以支持开发者使用最新的数据存储和管理创新技术”,微软开发者部门总裁 Julia Liuson 表示。“我们的合作将继续支持像 Azure Cache for Redis 这样的集成解决方案,并将为微软客户提供对 Redis 服务中扩展功能的独家访问权限。”

实际上,对于 Redis 开发者社区来说,一切都没有变,他们将继续在双许可证下享受宽松的许可证。同时,所有由 Redis 负责的 Redis 客户端库将保持开源许可证。Redis 将继续通过其合作伙伴计划支持其庞大的合作伙伴生态系统——包括托管服务供应商和系统集成商——并提供对所有未来版本、更新和由 Redis 开发和提供的功能的独家访问权限。对现有的 Redis Enterprise 客户来说,一切都没有变化。

我们的新许可证方式在广泛提供 Redis 源代码,以最小的限制支持开发者社区,保护我们继续投资于功能丰富的免费软件和企业产品的能力之间,找到了最好的平衡。

正如我们一直所做的那样,我们的团队、社区以及客户与合作伙伴,将继续引领创建、推进和部署 Redis 作为领先的实时数据平台的道路。

更多信息详见:FAQ(https://redis.com/blog/redis-adopts-dual-source-available-licensing/)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/760088.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Vue.js前端开发零基础教学(二)

目录 前言 2.1 单文件组件 2.2 数据绑定 2.2.2 响应式数据绑定 2.3 指令 2.3.1 内容渲染指令 2.3.2 属性绑定指令 ​编辑 2.3.3 事件绑定指令 2.3.4 双向数据绑定指令 2.3.5 条件渲染指令 2.3.6 列表渲染指令 2.4 事件对象 2.5 事件修饰符 学习目标&am…

优化您的部署:Docker 镜像最佳实践

介绍 在快速发展的软件开发和部署领域,Docker 已成为容器化的强大工具,为打包、分发和运行应用程序提供了一种标准化的高效方式。Docker 镜像在这一过程中发挥着至关重要的作用,是容器化应用程序的基础。为确保最佳性能、可扩展性和安全性&a…

sentinel使用控制台实现

1、添加依赖 <!--整合控制台--><dependency> <groupId>com.alibaba.csp</groupId> <artifactId>sentinel-transport-simple-http</artifactId> <version>1.8.0</version></dependency> 此项方法&#xff0…

HarmonyOS入门学习

HarmonyOS入门学习 前言快速入门ArkTS组件基础组件Image组件Text组件TextInput 文本输入框Buttonslider 滑动组件 页面布局循环控制ForEach循环创建组件 List自定义组件创建自定义组件Builder 自定义函数 状态管理Prop和LinkProvide和ConsumeObjectLink和Observed ArkUI页面路由…

JVM第八讲:GC - Java 垃圾回收基础知识

GC - Java 垃圾回收基础知识 本文是JVM第八讲&#xff0c; Java 垃圾回收基础知识。垃圾收集主要是针对堆和方法区进行&#xff1b;程序计数器、虚拟机栈和本地方法栈这三个区域属于线程私有的&#xff0c;只存在于线程的生命周期内&#xff0c;线程结束之后也会消失&#xff0…

蓝桥杯day6刷题日记-航班时间-完全二叉树的权值-砝码称重

P8665 [蓝桥杯 2018 省 A] 航班时间 注意输出形式和读取数据的形式 #include <iostream> #include <algorithm> using namespace std; int n,h1,m1,s1,h2,m2,s2; int q[1000];int gettime() {int day 0;scanf("%d:%d:%d %d:%d:%d", &h1, &m1,…

单片机第四季-第二课:uCos2源码-BSP

1&#xff0c;初始uCos2 文件中uC开头的为uCos相关的。 2&#xff0c;uCos2源码工程建立 建立Source Insight工程 寻找main函数 (1)RTOS其实就是一个大的裸机程序&#xff0c;也是从main开始运行的 (2)main之前也是有一个汇编的启动文件的 (3)main中调用了很多初始化函数 bsp部…

html2canvas实现原理

html2canvas 是一个 JavaScript 库&#xff0c;可以将 HTML 元素转换为 Canvas 元素&#xff0c;进而实现对网页内容的截图功能。它的实现原理主要包括以下几个步骤&#xff1a; 1、解析和构建 DOM 树&#xff1a;html2canvas 首先会解析网页上指定的 HTML 元素&#xff0c;包…

开机动画结束正常进入桌面

systemUI 添加壁纸 1128 I am_proc_start: [0,1485,10019,com.android.systemui,service,{com.android.systemui/com.android.systemui.ImageWallpaper}] Line 87550: 03-08 17:29:15.680346 947 1128 I ActivityManager: Start proc 1485:com.android.systemui/u0a19 …

Linux信号补充——信号发送和保存

三、信号的发送与保存 3.1信号的发送 ​ 必须有操作系统来保存信号&#xff0c;因为他是管理者&#xff1b; ​ 信号给进程的task_struct发送信号&#xff0c;在task_struct中维护了一个整数signal有0-31位&#xff0c;共32个bit位&#xff1b;对于信号的管理使用的是位图结…

Java常见的垃圾回收器GC

本节讲解一下常见的垃圾回收器。需要特别注意的是&#xff0c;每一种垃圾回收器都会存在用户线程&#xff08;即用户程序&#xff09;暂停的问题&#xff0c;只不过每种回收器用户线程暂停的时长优化程度不一样。在启动JVM时&#xff0c;可以通过“指定参数-xx:垃圾回收器名称”…

Android静默安装一(Root版)

近期开发上线一个常驻app&#xff0c;项目已上线&#xff0c;今天随笔记录一下静默安装相关内容。我分三篇静默安装&#xff08;root版&#xff09;、静默安装&#xff08;无障碍版&#xff09;、监听系统更新、卸载、安装。先说说我的项目需求&#xff1a;要求app一直运行&…

贵价茶叶产区成谜,竹叶青茶是“行业黑马”还是“韭菜镰刀”?

撰稿|行星 来源|贝多财经 近日&#xff0c;央视“315”晚会曝光了自诩“高端商务白酒”的听花酒。这款白酒号称拥有提升免疫力、改善睡眠、保障男性功能等多种保健功能&#xff0c;标准装售价5860元&#xff0c;精品装售价更是达到5.86万元&#xff0c;昂贵程度令人瞠目结舌。…

为什么c++要在c语言的基础上添加命名空间?命名空间如何定义和使用?

1、为什么c要在c语言上增添命名空间的概念 在c语言中&#xff0c;定义的全局变量与库中相同&#xff0c;或者和别人代码结合的时候可能存在相同的命名&#xff0c;此时就会命名冲突。c语言是没有办法很好的解决这个问题的。 假设这样一种情况&#xff0c;当一个班上有两个名叫…

jmeter的函数助手使用方法

如某个上传文件接口&#xff0c;一个文件只能同时被一个接口调用&#xff0c;如果被并发同时调用就会报错 创建多个测试文件 比如50并发&#xff0c;创建更多的文件防止并发多时随机数生成重复 生成随机数函数 工具–函数助手-选择random-输入范围&#xff08;1-696&#…

网络学习:IPV6基础配置

目录 一、配置接口的全球单播地址 二、配置接口本地链路地址 三、配置接口任播地址 四、配置接口PMTU 配置静态PMTU&#xff1a; 配置动态PMTU&#xff1a; 五、接口配置IPV6地址示例&#xff1a; 一、配置接口的全球单播地址 全球单播地址类似于IPv4公网地址&#xff0…

前端 js 经典:数组常用方法总结

一&#xff1a;不改变原数组的方法 1. join 数组拼接 let arr [1, 2, 3]; // 默认拼接 arr.join(""); // 默认 , 拼接&#xff0c;返回&#xff1a;1,2,3 // 使用 - 拼接 arr.join("-"); // 返回&#xff1a;1-2-3 2. concat 尾部插入 let arr [1, 2…

Redis技术学习|实战项目记录|短信登录(重点:拦截器)+ Redis代替session存储用户登录信息

学习资料声明 黑马程序员的Redis学习视频&#xff1a;黑马程序员Redis入门到实战教程 需要用到的知识&#xff1a;linux&#xff08;推荐韩顺平老师的教程&#xff0c;学到p30&#xff0c;创建好虚拟机和简单的几个命令就好。&#xff09;SSM。SpringBoot。 还用到了MybatisPl…

富格林:合理规避虚假风险安全盈利

富格林悉知&#xff0c;黄金投资不仅具有强大的保值功能&#xff0c;其剧烈的市场变化也隐含着巨大的盈利潜力&#xff0c;吸引着众多投资者入市。但投资都会存在一定的风险&#xff0c;因此大家在投资的过程中要学习总结一些技巧&#xff0c;以便能在必要时帮助投资者规避虚假…

linux系统kubernetes容器检查和恢复机制

容器检查和恢复机制 容器检查和恢复机制命令模式探针http get方式探针POD 的恢复策略 容器检查和恢复机制 在kubernetes中&#xff0c;可以为容器定义一个健康探针&#xff0c;kubelet 就会根据这个 Probe 的返回值决定这个容器的状态&#xff0c;而不是直接以容器是否运行&…