当前位置: 首页 > news >正文

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/)

相关文章:

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

原文:Rowan Trollope - 2024.03.20 未来的 Redis 版本将继续在 RSALv2 和 SSPLv1 双许可证下提供源代码的免费和宽松使用;这些版本将整合先前仅在 Redis Stack 中可用的高级数据类型和处理引擎。 从今天开始,所有未来的 Redis 版本都将以开…...

生产者Producer往BufferQueue中写数据的过程

In normal operation, the producer calls dequeueBuffer() to get an empty buffer, fills it with data, then calls queueBuffer() to make it available to the consumer 代码如下: // XXX: Tests that fork a process to hold the BufferQueue must run bef…...

使用 Vite 和 Bun 构建前端

虽然 Vite 目前可以与 Bun 配合使用,但它尚未进行大量优化,也未调整以使用 Bun 的打包器、模块解析器或转译器。 Vite 可以与 Bun 完美兼容。从 Vite 的模板开始使用吧。 bun create vite my-app ✔ Select a framework: › React ✔ Select a variant:…...

如何设置IDEA远程连接服务器开发环境并结合cpolar实现ssh远程开发

文章目录 1. 检查Linux SSH服务2. 本地连接测试3. Linux 安装Cpolar4. 创建远程连接公网地址5. 公网远程连接测试6. 固定连接公网地址7. 固定地址连接测试 本文主要介绍如何在IDEA中设置远程连接服务器开发环境,并结合Cpolar内网穿透工具实现无公网远程连接&#xf…...

【项目管理后台】Vue3+Ts+Sass实战框架搭建二

Vue3TsSass搭建 git cz的配置mock 数据配置viteMockServe 建立mock/user.ts文件夹测试一下mock是否配置成功 axios二次封装解决env报错问题,ImportMeta”上不存在属性“env” 统一管理相关接口新建api/index.js 路由的配置建立router/index.ts将路由进行集中封装&am…...

制作一个RISC-V的操作系统六-bootstrap program(risv 引导程序)

文章目录 硬件基本概念qemu-virt地址映射系统引导CSR![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/86461c434e7f4b1b982afba7fad0256c.png)machine模式下的csr对应的csr指令csrrwcsrrs mhartid引导程序做的事情判断当前hart是不是第一个hart初始化栈跳转到c语言的…...

haproxy和keepalived的区别与联系

HAProxy(High Availability Proxy) 是一个开源的、高效且可靠的解决方案,主要用于负载均衡。它工作在应用层(第七层),支持多种协议,如HTTP、HTTPS、FTP等。HAProxy通过健康检查机制持续监控后…...

云效 AppStack + 阿里云 MSE 实现应用服务全链路灰度

作者:周静、吴宇奇、泮圣伟 在应用开发测试验证通过后、进行生产发布前,为了降低新版本发布带来的风险,期望能够先部署到灰度环境,用小部分业务流量进行全链路灰度验证,验证通过后再全量发布生产。本文主要介绍如何通…...

pta L1-004 计算摄氏温度

L1-004 计算摄氏温度 分数 5 全屏浏览 切换布局 作者 陈建海 单位 浙江大学 给定一个华氏温度F,本题要求编写程序,计算对应的摄氏温度C。计算公式:C5(F−32)/9。题目保证输入与输出均在整型范围内。 输入格式: 输入在一行中给出一个华氏…...

毕业论文降重(gpt+完美降重指令),sci论文降重gpt指令——超级好用,重复率低于4%

1. 降重方法:gpt降重指令 2. gpt网站 https://yiyan.baidu.com/ https://chat.openai.com/ 3. 降重指令——非常好用!!sci论文,本硕大论文都可使用! 请帮我把下面句子重新组织,通过调整句子逻辑&#xff0…...

Qt 多元素控件

Qt开发 多元素控件 Qt 中提供的多元素控件有: QListWidgetQListViewQTableWidgetQTableViewQTreeWidgetQTreeView xxWidget 和 xxView 之间的区别 以 QTableWidget 和 QTableView 为例. QTableView 是基于 MVC 设计的控件. QTableView 自身不持有数据. 使用QTableView 的 …...

LeetCode热题Hot100-两数相加

一刷一刷 给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。 请你将两个数相加,并以相同形式返回一个表示和的链表。 你可以假设除了数字 0 之外,这两个数都不…...

Selenium 自动化 —— 浏览器窗口操作

更多内容请关注我的专栏: 入门和 Hello World 实例使用WebDriverManager自动下载驱动Selenium IDE录制、回放、导出Java源码 当用 Selenium 打开浏览器后,我们就可以通过 Selenium 对浏览器做各种操作,就像我们日常用鼠标和键盘操作浏览器一…...

二、Kubernetes(k8s)中部署项目wordpress(php博客项目,数据库mysql)

前期准备 1、关机顺序 2、开机顺序 (1)、k8s-ha1、k8s-ha2 (2)、master01、master02、master03 (3)、node01、node02 一、集群服务对外提供访问,需要通过Ingress代理发布域名 mast01上传 ingress-nginx.yaml node01、node02 上传 ingress-nginx.tar 、kube-webh…...

linux系统Kubernetes工具Service暴露服务

Service ServiceService创建service页面请求测试pod内部请求测试端口解析kube-proxy 使用ipvs 意义pod和Service的关系常用类型ClusterIpNodePortLoadBalancernode内网部署应用,外网访问不到 Service 服务基于ip端口的虚拟主机,定义一组pod的访问规则 Se…...

【算法篇】逐步理解动态规划1(斐波那契数列模型)

目录 斐波那契数列模型 1. 第N个泰波那契数 2.使用最小花费爬楼梯 3.解码方法 学过算法的应该知道,动态规划一直都是一个非常难的模块,无论是状态转移方程的定义还是dp表的填表,都非常难找到思路。在这个算法的支线专题中我会结合很多力…...

软件测试 - postman高级使用

断言 概念:让程序代替人判断测试用例执行的结果是否符合预期的一个过程 特点: postman断言使用js编写,断言写在postman的tests中 tests脚本在发送请求之后执行,会把断言的结果最终在testresult中进行展示 常用的postman提供的…...

数据交换技术

目录 <线路交换> <报文交换> <分组交换> 1.数据报分组交换 2.虚电路分组交换 计算机网络是以数据交换为目的的技术&#xff0c;从交换技术的发展过程来看&#xff0c;主要经历了线 路交换、报文交换、分组交换的过程。 <线路交换> 线路交换又称为…...

FFmpeg-- mp4文件合成1:aac和h264封装(c++实现)

文章目录 流程api核心代码muxer.hmuxer.cppaac 和 h264 封装为视频流,封装为c++的Muxter类 流程 分配视频文件上下文 int Init(const char *url); 创建流,赋值给视频的音频流和视频流 int AddStream(AVCodecContext *codec_ctx); 写视频流的head int SendHeader(); 写视频流的…...

【嵌入式开发 Linux 常用命令系列 1.3 -- 统计目录下有多少个文件】

统计目录下有多少个文件 在 Linux 中&#xff0c;你可以使用 find 命令和 wc&#xff08;word count&#xff09;命令的组合来统计当前目录及其子目录下的文件数量。如果你只对当前目录&#xff08;不包括子目录&#xff09;中的文件数量感兴趣&#xff0c;可以使用 ls 和 wc …...

PDF转PPT转换方法总结

你是否遇到过这些场景&#xff1f; 收到客户发来的产品手册PDF&#xff0c;明天就要用它做演示&#xff1b; 公司历史资料只有PDF版&#xff0c;领导突然要求更新为幻灯片。 这时PDF转PPT工具就成了救命稻草。接下来&#xff0c;介绍三种PDF转PPT工具。 1. iLoveOFD在线转换…...

图卷积网络:从理论到实践

图卷积网络&#xff08;Graph Convolutional Networks, GCNs&#xff09;彻底改变了基于图的机器学习领域&#xff0c;使得深度学习能够应用于非欧几里得结构&#xff0c;如社交网络、引文网络和分子结构。本文将解释GCN的直观理解、数学原理&#xff0c;并提供代码片段帮助您理…...

Shell编程核心符号与格式化操作详解

Shell编程作为Linux系统管理和自动化运维的核心技能&#xff0c;掌握其常用符号和格式化操作是提升脚本开发效率的关键。本文将深入解析Shell中重定向、管道符、EOF、输入输出格式化等核心概念&#xff0c;并通过丰富的实践案例帮助读者掌握这些重要技能。 一、信息传递与重定…...

LabVIEW实时系统数据监控与本地存储

基于LabVIEW Real-Time 模块&#xff0c;面向工业自动化、嵌入式测控等场景&#xff0c;提供实时数据采集、监控与本地存储的完整实现路径。通过分层任务调度、TDMS 文件格式应用及跨平台兼容性设计&#xff0c;确保系统在实时性、可靠性与数据管理效率间达到平衡。文中以 Comp…...

[蓝桥杯 2024 国 B] 立定跳远

问题描述 在运动会上&#xff0c;小明从数轴的原点开始向正方向立定跳远。项目设置了 n 个检查点 a1,a2,...,an且 ai≥ai−1>0。小明必须先后跳跃到每个检查点上且只能跳跃到检查点上。同时&#xff0c;小明可以自行再增加 m 个检查点让自己跳得更轻松。在运动会前&#xf…...

一个完整的日志收集方案:Elasticsearch + Logstash + Kibana+Filebeat (二)

&#x1f4c4; 本地 Windows 部署 Logstash 连接本地 Elasticsearch 指南 ✅ 目标 在本地 Windows 上安装并运行 Logstash配置 Logstash 将数据发送至本地 Elasticsearch测试数据采集与 ES 存储流程 &#x1f9f0; 前提条件 软件版本要求安装说明Java17Oracle JDK 下载 或 O…...

RT-Thread内核组成——内核移植

内核移植就是指将 RT-Thread 内核在不同的芯片架构、不同的板卡上运行起来&#xff0c;能够具备线程管理和调度&#xff0c;内存管理&#xff0c;线程间同步和通信、定时器管理等功能。移植可分为 CPU 架构移植和 BSP&#xff08;Board support package&#xff0c;板级支持包&…...

【高效开发工具系列】Blackmagic Disk Speed Test for Mac:专业硬盘测速工具

博客目录 一、Blackmagic Disk Speed Test 概述二、软件核心功能解析三、v3.3 版本的新特性与改进四、实际应用场景分析五、使用技巧与最佳实践六、与其他工具的比较及优势 一、Blackmagic Disk Speed Test 概述 Blackmagic Disk Speed Test 是 Mac 平台上广受专业人士青睐的一…...

联想拯救者R9000P 网卡 Realtek 8852CE Ubuntu/Mint linux 系统睡眠后,无线网卡失效

联想拯救者R9000P 网卡型号 Realtek PCle GbE Family Controller Realtek 8852CE WiFi 6E PCI-E NIC 系统版本 Ubuntu 24.04 / mint 22.1 问题现象 rtw89_8852ce&#xff0c;Link is Down&#xff0c;xtal si not ready&#xff0c;mac init fail&#xff0c;xtal si not …...

互联网大厂Java求职面试:云原生架构下的微服务网关与可观测性设计

互联网大厂Java求职面试&#xff1a;云原生架构下的微服务网关与可观测性设计 郑薪苦怀着忐忑的心情走进了会议室&#xff0c;对面坐着的是某大厂的技术总监张总&#xff0c;一位在云原生领域有着深厚积累的专家。 第一轮面试&#xff1a;微服务网关的设计挑战 张总&#xf…...