0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Redis 开源协议调整,我们怎么办?

jf_94205927 来源:jf_94205927 作者:jf_94205927 2024-05-09 22:59 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

2024 年 3 月 20 日, Redis 官方宣布,从 Redis 7.4 版本开始,Redis 将获得源可用许可证 ( RSALv2 ) 和服务器端公共许可证 ( SSPLv1 ) 的双重许可,时间点恰逢刚刚完成最新一轮融资,宣布的时机耐人寻味。

Redis 协议调整,对云计算厂商的影响

Redis 协议调整听起来可能没什么,但在开源项目领域是一个大问题。这并不是 Redis 官方第一次改变许可方式,早在 2018 年,Redis Labs 将其许可证从 AGPL 更改为 Apache 2 modified with Commons Clause。Commons Clause 在其许可之上增加了商业限制条款。

从 Redis Labs 团队成员在网上发布的言论,可以了解到:“目前部分云提供商复用成功的开源项目,却没有为其社区做出重大贡献,他们将非其自行研发的软件产品通过重新打包的方式,转变成极具竞争力的云服务产品,并利用他们的业务优势从这些开源项目中获取可观的收入。”

不可否认,随着云计算技术的飞速发展,Redis 作为一款流行的开源内存计算高速缓存,在云环境中将发挥着举足轻重的作用,其高效的数据处理能力和丰富的数据结构支持,使其成为众多企业应用和云服务产品的重要组件。

然而,随着云计算厂商纷纷推出相应的 Redis 之后,也面临着诸多方面的挑战:

1、合规性

Redis 自 2013 年起,采用了 BSD 开源协议,允许云服务商自由分发和使用 Redis 代码,但随着 Redis Labs 引入 Commons Clause 补充条款之后,针对商业软件服务提供商便提出了额外限制,这意味着云厂商必须注意许可模式的变化,确保在提供托管 Redis 服务时符合开源协议的精神及其附加条款,避免潜在的法律风险。

2、技术创新与差异化

开源 Redis 虽然提供了基础功能,但为了在竞争激烈的云服务市场中脱颖而出,云计算厂商需要开发出具备差异化特性的高级功能或管理工具。如何在遵循开源协议的同时,增加诸如监控、备份恢复、安全防护等增值服务,是对云厂商技术研发能力的考验。

3、服务质量与 SLA 保障

云服务商提供的 Redis 服务不仅要保证开源版本的稳定性和性能,还需提供高质量的服务水平协议(SLA),包括高可用性、容灾恢复以及弹性扩展等,而这些特性往往需要在开源 Redis 基础上进行大量定制开发和优化工作。

4、维护与升级

云环境下的 Redis 集群需要及时更新至最新版本以获取最新的功能和安全修复。然而,不同客户可能依赖于不同的 Redis 版本,这就要求云厂商在提供统一服务的同时,必须处理好不同版本之间的兼容性和平滑升级的问题。

为了满足用户需求及顺应市场变化,各云厂商采取了以下对策:

1、积极参与社区

云计算厂商应积极贡献开源社区,参与 Redis 核心功能的改进与发展,同时也通过这种方式获得社区的信任和支持,增强自身在开源生态中的影响力。

2、自主创新与合作

建立专门的研发团队,针对 Redis 进行深度定制开发,推出自有知识产权的增强版 Redis 服务。此外,与 Redis 官方或其他第三方合作伙伴建立紧密联系,共同解决许可问题并寻求共赢解决方案。

3、标准化服务与管理平台

构建完善的自动化运维平台,确保能够快速响应 Redis 实例的创建、扩容、迁移和维护等需求,同时提供可视化管理和监控工具,提升用户体验和运维效率。

4、多样化的服务模式

根据客户需求提供多种服务模式,例如开源 Redis 的托管服务、基于 Redis 的企业版解决方案,甚至包含具有技术支持和个性化功能的高级服务包。

面对 Redis 开源协议带来的挑战,云计算厂商需在遵守许可规定的基础上,持续创新,提供优质服务,强化与开源社区的合作,并通过不断提升自身的技术服务实力,以满足日益增长的市场需求。在这个过程中,不仅推动了 Redis 技术在云端的应用普及,也促进了整个云计算行业的健康发展。

无惧 Redis 协议更改,华为云 100%技术自主创新缓存更快更强

华为云分布式缓存服务 DCS 是华为云为客户提供的一款基于 Redis 内核的云服务,经过多年持续不断的投入与建设,较开源 Redis 在易用性、高性能、高可靠和性价比方面都具有显著的优势,已经成为企业信赖和依靠的一款优秀产品。

DCS 与开源产品对比情况:

wKgZomY85OuAVlS8AAMdsEulQOA452.png

除此之外,DCS 的研发团队也非常重视对开源社区的回馈。截止发文日,过去一年在开源社区贡献排名第 5,累计贡献排名第 9;国内社区影响力排名第 2;累计 154 次 commit 次数和 138 次 PR,总共贡献 13000+行代码。

在去年 2023 年,华为云分布式缓存服务 DCS 还特别推出了企业版,该企业版是 100%自主创新开发的多线程高性能缓存,并且 100%兼容 Redis 协议,较 Redis 不管是在多线程、内存效率还是高吞吐量上都完全超越对方。

Redis 5.x 以前的单(主)线程模型,主线程主要处理新建网络链接接入、命令解析、命令执行、响应封装等,同时负责网络读写,当遇到网络阻塞或者高耗时任务,如命令执行时,则会导致时延增高。

随着计算硬件的性能提升,网络的读写成为系统性能提升的瓶颈,在 Redis6.0 以上,通过多线程模型处理网络读写,提升系统性能,主线程承接高时延的命令执行任务,考虑到多线程复杂度问题,在满足 80%业务诉求的情况下,仍然采用单主线程。

在业务发展的同时,仍然需要能够把更高性能要求的硬件资源发挥到极致,那么,命令执行任务的时延问题就会成为性能提升的瓶颈,DCS 企业版的核心解决思路就是通过完全的多主线程模型提升性能,并且 100%兼容开源 Redis,通过网络多线程调度模型,大大提升网络读写任务的并发量,保障秒级的读写性能,下面是实验室评测的一些数据:

wKgZomY85OyAc2eYAAHy4QKWvFc271.png

wKgaomY85O2AT864AAFk4anjSco298.png

可以看到,华为云 DCS 企业版 Redis 的 QPS 并发数优于基于开源 Redis 版本最大接近 5 倍,时延是其 25%,完全遥遥领先。

华为云分布式缓存服务 DCS 经过 5 年的发展,目前已经广泛应用于电商、社交文娱、游戏等行业。在上云阶段通过专业的上云搬迁团队,提供贴身技术咨询和迁移实施支持服务,实现了应用“零改造”,搬迁上云业务无中断;上云后通过千万级的并发接入能力和百万级的读写能力保障秒杀商品“零等待”、订单无丢失、直播间礼物“零卡顿”等高难度应用场景,成为华为云客户信赖的最有价值的云服务。

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 开源
    +关注

    关注

    3

    文章

    4325

    浏览量

    46427
  • Redis
    +关注

    关注

    0

    文章

    394

    浏览量

    12249
  • 华为云
    +关注

    关注

    3

    文章

    2835

    浏览量

    19369
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    Redis应用监控指标大盘点

    Redis作为高性能内存数据库,广泛应用于缓存、会话存储、消息队列等场景。对Redis运行状况的有效监控,是保障业务稳定性的关键。本文的目的是帮助运维工程师建立完整的Redis监控知识体系,讲解需要监控哪些指标、如何采集这些指标
    的头像 发表于 04-09 10:07 146次阅读

    刚入行看不懂电路图怎么办

    刚入行看不懂电路图怎么办?很多电子新手刚入行时,面对密密麻麻的电路图总会犯怵:“这么多元件和线路,到底从哪看起?”别慌!今天就带大家拆解电路图的核心逻辑,只要掌握这5大模块,看懂电路图真的没那么难
    的头像 发表于 04-02 09:01 218次阅读
    刚入行看不懂电路图<b class='flag-5'>怎么办</b>?

    三防漆不固化怎么办?从材料到工艺的排查指南 |铬锐特实业

    铬锐特实业|东莞厂家|三防漆不固化怎么办?从材料过期、固化条件错配、涂层过厚、前处理不当到环境温湿度,一文带你系统排查三防漆固化不良问题,附行业数据及实用解决方法。
    的头像 发表于 02-22 01:22 298次阅读
    三防漆不固化<b class='flag-5'>怎么办</b>?从材料到工艺的排查指南 |铬锐特实业

    智能显示模块连接电脑后无法识别怎么办?连接电脑后读不到模块U盘?

    智能显示模块连接电脑后无法识别怎么办?连接电脑后读不到模块的U盘是什么原因?
    发表于 01-20 15:57

    智能显示模块上电后显示“No Project”怎么办

    智能显示模块上电后显示“No Project”怎么办
    发表于 01-20 15:20

    使用单片机系统时间不准怎么办

    使用单片机系统时间不准,怎么办?具体的是与晶振有关系还是MCU内部有关系,时间一长显示的时间就慢了
    发表于 12-05 07:51

    请问单片机RAM空间不够用了怎么办

    单片机RAM空间不够用了怎么办
    发表于 11-25 08:09

    电脑开机每次自动开启很多软件怎么办

    电脑开机每次自动开启很多软件怎么办
    发表于 07-17 06:40

    路由器能连上但是没有网络怎么办

    路由器能连上但是没有网络怎么办
    发表于 07-10 06:15

    Redis集群部署与性能优化实战

    Redis作为高性能的内存数据库,在现代互联网架构中扮演着关键角色。作为运维工程师,掌握Redis的部署、配置和优化技能至关重要。本文将从实战角度出发,详细介绍Redis集群的搭建、性能优化以及监控运维的核心技术。
    的头像 发表于 07-08 17:56 1009次阅读

    请问STM32U5不支持ST-LINK v2怎么办

    STM32U5不支持ST-LINK v2怎么办
    发表于 06-09 07:59

    【幸狐Omni3576边缘计算套件试用体验】Redis最新8.0.2版本源码安装及性能测试

    的结果进行对比。 一、Redis是什么 维基百科的介绍是: Redis是一个使用ANSI C编写的开源、支持网络、基于内存、分布式、可选持久性的键值对存储数据库。 Redis官网的
    发表于 06-03 01:28

    电脑连接到openmv,但不会自动弹出盘符,请问怎么办

    电脑连接到openmv,但不会自动弹出盘符,请问怎么办
    发表于 05-27 06:53

    Redis 再次开源

    “  Redis 现已采用 AGPLv3 开源许可证。  ” Redis CEO 的 Blog 以下是 Redis CEO Rowan Trollope 的 Blog: 像 AWS 和
    的头像 发表于 05-06 18:26 1055次阅读

    FPGA的Jtag接口烧了,怎么办

    在展开今天的文章前,先来讨论一个问题:FPGA的jtag接口烧了怎么办?JTAG接口的输入引脚通常设计为高阻抗,这使得它们对静电电荷积累非常敏感,由于JTAG接口需要频繁连接调试器、下载线缆等外
    的头像 发表于 04-27 11:01 2826次阅读
    FPGA的Jtag接口烧了,<b class='flag-5'>怎么办</b>?