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

Redis宣布商用后,Redis国产化替代方案有那些?

一、背景

Redis作为使用最为广泛的开源缓存中间件,现已成为IT开发中必不可少的核心组件。官方修改协议印证了“开源”不意味着“无偿使用”,相关限制或将对基于开源Redis提供中间件产品的厂商,及提供Redis服务的云厂商产生一定影响。

二、国产化替代方案

我这边了解到的有:东方通TongRDS中间件、宝蓝德CacheServer中间件、腾讯Tendis中间件、阿里Tair、阿里OceanBase、百度Nedis、达梦新云缓存数据库、星环科技湖仓一体方案、小米XRedis、京东JRedis、中兴ZXRedis。(有知道其他的可以评论留言哈)

国内有多家企业推出了自己的云原生数据库产品,如华为云的PolarDB、阿里云的ApsaraDB for Redis、腾讯云的TencentDB for Redis等,这些产品在性能、扩展性和稳定性方面与Redis相当,并且具有更好的本地化支持和数据安全性。

三、Redis国产化替代方案特点

下面介绍下主流的几个国产缓存中间件:

1.东方通TongRDS中间件

东方通拥有自主架构的分布式数据缓存中间件TongRDS,可在不修改代码的前提下,实现对开源Redis的无缝替换。东方通数据缓存中间件TongRDS基于Java开发,代码自主率95%以上,在指令和协议上完全兼容Redis,已广泛应用于运营商、金融和党政等安全性能要求严苛的行业客户,可实现高效、平滑替代。
        TongRDS是一款高性能多并发分布式数据缓存中间件,为企业信息化系统提供数据信息的缓存、分享与同步功能。通过先进的内存分配算法,产品实现了基于内存方式的数据高性能读写、实时稳定数据同步、分布式部署等功能,满足企业分布式与高可用使用场景。TongRDS提供了高度兼容Redis的数据访问接口,并保持优于Redis的读写性能。

2.宝蓝德CacheServer中间件

宝兰德分布式缓存数据库,简称BES CacheServer。分布式高性能 KV 缓存数据库,完全兼容Redis协议标准,主要解决高并发、大数据量场景下的数据访问性能问题。

  BES CacheServer是一款国产自研的高性能KV存储数据库软件。完全兼容Redis协议标准,支持基于内存和文件的持久化存储,保证数据的安全可靠;使用标准C编写,将所有数据加载内存中,速度快;支持包括字符串(strings),散列(hashes),列表(lists),集合(sets),有序集合(sortedsets)在内的多种数据结构;支持单机、主从、集群等多种部署架构;支持数据分片,数据分布在多个实例中;客户端支持Python、Java、Lua、PHP、Ruby、Perl等多种语言。主要解决高并发、大数据量场景下的数据访问性能问题。可灵活的支持物理机、虚拟机、容器环境部署。

BES CacheServer优势:

      1.产品竞争力优势
  宝兰德中间件品类丰富,可兼容不同基础设施运行环境;源码自有、安全可控、名录产品、持续加码创新突破技术研发;超15年运行投产经验、可强势PK国外主流中间件产品。
  2.安全性能优势
  宝兰德中间件系列产品支持使用国密算法SM2、SM3、SM4进行通讯,保障数据传输的安全性。内部安全团队实时跟踪监测安全漏洞,定期组织攻防演练与安全加固,及时修复潜在安全风险。同时,宝兰德提供全面、多维度的监控指标数据,包括JVM使用情况、web连接池使用情况等,积极响应用户的定制化监控需求。
  3.技术实力优势
  国内首创JDBC多数据源、资源泄漏智能侦测和回收、集成负载均衡软件等;宝兰德独创EJB私有访问协议,是国内外唯一能够媲美WebLogic T3协议的高性能协议;国内首家通过信通院云原生能力成熟度四级的中间件厂商。
  4.服务能力优势
  完全掌握代码、定制能力强,覆盖全国30多个省市的专业技术服务团队,7*24小时为产品稳定运行保驾护航。
  5.国产环境适配
  宝兰德的中间件产品对比非国产产品,能以优异的性能、高安全性、高稳定性运行在国产环境下,屏蔽掉底层基础设施差异带来的问题,同时宝兰德响应国家信创要求,适配各类国产服务器芯片、操作系统、数据库以及应用软件。
  6.市场占有率优势
  运营商起家,中国移动90%+份额,起点高;全国信创,从部委到地方党政广泛覆盖;金融翘楚,占据金融中间件市场60%份额。
  7.案例优势
 
 支持全国14亿用户使用的业务系统运行;中间件实例替换总数量全国第一;N个中间件产品采购规模1000W+案例。

3.腾讯Tendis中间件

由腾讯互娱 CROS DBA 团队 & 腾讯云数据库团队联合研发的 Tendis 推出了: 缓存版 、混合存储版和存储版三种不同产品形态, 针对不同的业务需求,并将存储版开源。

        1.Tendis 缓存版:适用于对延迟要求特别敏感, 并且对 QPS 要求很高的业务。基于社区 Redis 4.0 版本进行定制开发。Tendis存储版自主设计和研发的开源分布式高性能KV存储。完全兼容redis协议,并使用rocksdb作为存储引擎。用户可以通过redis client访问Tendis存储版,几乎不用修改代码。同时,Tendis存储版支持远超内存的磁盘容量,可以大大降低用户的存储成本。类似于Redis Cluster, Tendis存储版使用去中心化的集群管理架构。数据节点之间通过gossip协议通讯,用户访问集群中的任意数据节,请求都能路由到正确的节点。并且集群节点支持自动发现、故障探测、自动故障切换、数据搬迁等能力,极大降低运维成本。

        2.Tendis 存储版:适用于大容量, 延迟不敏感型业务, 数据全部存储在 磁盘, 适合温冷数据的存储。Tendis 存储版是腾讯互娱 CROS DBA 团队 & 腾讯云数据库团队 自主设计和研发的开源分布式高性能 KV 存储系统。另外在 可靠性、复制机制、并发控制、gossip 实现以及数据搬迁等做了大量的优化, 并且解决了一些 Redis cluster 比较棘手的问题。完全兼容 Redis 协议, 并使用 RocksDB 作为底层存储引擎。

        3.Tendis 冷热混合存储版:冷热混合存储 综合了缓存版和存储版的优点, 缓存层存放热数据, 全量数据存放在存储层。这既保证了热数据的访问性能,同时保证了全量数据的可靠性,同时热数据支持自动降冷。

4.阿里Tair

        阿里云Tair是一款高性能、高可用的分布式缓存系统,由阿里巴巴集团开发,适用于各种大规模的在线服务和应用场景。它支持多种数据类型和数据操作,包括字符串、哈希表、列表、集合、有序集合等,能够提供快速的数据读写和访问服务。Tair提供了多种接口和客户端,包括Java、PHP、C++、Python等,方便集成到不同的应用程序中。同时,Tair还提供了管理和监控工具,如控制台、命令行工具、API接口等,帮助用户管理和监控Tair集群的运行状态和性能指标。

        Tair的应用场景非常广泛,包括电商和在线购物平台的订单管理、商品库存管理、用户购物车等业务场景;游戏和在线娱乐平台的游戏状态管理、虚拟物品管理、游戏排行榜等业务场景;社交和即时通讯平台的用户信息管理、好友关系管理、消息队列等业务场景;以及金融和支付平台的账户信息管理、交易记录管理、数据统计等业务场景。

        云原生内存数据库Tair是阿里云国产自研的云原生内存数据库,完全兼容Redis的基础上,提供了丰富的数据模型和企业级能力来帮助客户构建实时在线场景。Tair与新型存储介质——持久内存的高效结合,相比内存型成本降低30%以上,并能做到数据持久化和提供近似于内存的性能。Tair已广泛应用于政务、金融、制造、医疗和泛互联网等各行业客户,满足客户的高速查询和计算场景。

        Tair支持多种存储介质和不同场景性价比需求,包括内存型支持超高吞吐,性能为Redis三倍;持久内存型成本降低30%,支持数据实时持久化;支持向量检索能力。此外,Tair还兼容Redis 4.0、5.0、6.0版本,可根据业务需求进行选择,支持单副本、双副本,智能读写分离、集群架构等多种架构,满足不同的业务需求。

        阿里云Tair以其高性能、高可用性、丰富的数据类型支持以及广泛的应用场景,成为了企业构建高性能分布式缓存系统的理想选择。

相关文章:

Redis宣布商用后,Redis国产化替代方案有那些?

一、背景 Redis作为使用最为广泛的开源缓存中间件,现已成为IT开发中必不可少的核心组件。官方修改协议印证了“开源”不意味着“无偿使用”,相关限制或将对基于开源Redis提供中间件产品的厂商,及提供Redis服务的云厂商产生一定影响。 二、国…...

Go API

Go语言提供了大量的标准库,因此 google 公司也为这些标准库提供了相应的API文档,用于告诉开发者如何使用这些标准库,以及标准库包含的方法。官方位置:https://golang.org Golang中文网在线标准库文档: https://studygolang.com/p…...

基于STM32的简易智能家居设计(嘉立创支持)

一、项目功能概述 1、OLED显示温湿度、空气质量,并可以设置报警阈值 2、设置4个继电器开关,分别控制灯、空调、开关、风扇 3、设计一个离线语音识别系统,可以语音控制打开指定开关、并且可以显示识别命令词到OLED屏上 4、OLED实时显示&#…...

【YOLOv5/v7改进系列】改进池化层为RT-DETR的AIFI

一、导言 Real-Time DEtection TRansformer(RT-DETR),是一种实时端到端目标检测器,克服了Non-Maximum Suppression(NMS)对速度和准确性的影响。通过设计高效的混合编码器和不确定性最小化查询选择&#xf…...

使用Python和Matplotlib绘制复杂数学函数图像

本文介绍了如何使用Python编程语言和Matplotlib库来绘制复杂的数学函数图像。通过引入NumPy库的数学函数,我们可以处理包括指数函数在内的各种复杂表达式。本文详细讲解了如何设置中文字体以确保在图像中正确显示中文标题和标签,并提供了一个完整的代码示例,用户可以通过输入…...

淘宝/1688获得店铺的所有商品(商品列表)

通过以下步骤,可以获得淘宝或1688店铺的所有商品。请注意,具体步骤可能会因为平台的更新而有所改变,可以根据实际情况进行操作。 更多API调用展示以及获取Key和secret请移步 返回数据格式: {"user": null,"ite…...

【MySQL】锁机制

创作不易&#xff0c;本篇文章如果帮助到了你&#xff0c;还请点赞 关注支持一下♡>&#x16966;<)!! 主页专栏有更多知识&#xff0c;如有疑问欢迎大家指正讨论&#xff0c;共同进步&#xff01; 给大家跳段街舞感谢支持&#xff01;ጿ ኈ ቼ ዽ ጿ ኈ ቼ ዽ ጿ ኈ ቼ …...

LangChain入门学习笔记(一)——Hello World

什么是LangChain LangChain是一个开源&#xff08;github repo&#xff09;的大语言模型应用开发框架&#xff0c;提供了一整套的工具、方法和接口去帮助程序员构建基于大语言模型的端到端应用。LangChain是长链&#xff08;long chain&#xff09;的意思&#xff0c;它的一个…...

[ROS 系列学习教程] 建模与仿真 - 使用 Arbotix 控制机器人

ROS 系列学习教程(总目录) 本文目录 一、Arbotix 简介二、安装Arbotix三、配置Arbotix控制器四、配置launch启动文件五、数据交互接口六、在rviz中仿真控制机器人6.1 直接发topic控制6.2 使用键盘控制6.3 编写代码控制机器人移动 前面讲了机器人的建模&#xff0c;是静态的&…...

java:使用JSqlParser给sql语句增加tenant_id和deleted条件

# 示例代码 【pom.xml】 <dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-core</artifactId><version>3.4.3.1</version> </dependency>【MyJSqlParserTest.java】 package com.chz.myJSqlParser;pu…...

华三HCL模拟器安装及华三防火墙配置

0、前言 最近跟模拟器杠上了&#xff0c;主要是需要运行防火墙&#xff0c;目前已经成功模拟出华为、山石防火墙&#xff0c;而且模拟出来的设备能与物理网络环境进行互联。现在我又盯上华三防火墙了。 首先下载模拟器&#xff1a; 下载地址&#xff1a;H3C网络设备模拟器官方免…...

MySQL基础---库的操作和表的操作(配着自己的实操图,简单易上手)

绪论​ 勿问成功的秘诀为何&#xff0c;且尽全力做您应该做的事吧。–美华纳&#xff1b;本章是MySQL的第二章&#xff0c;本章主要写道MySQL中库和表的增删查改以及对库和表的备份处理&#xff0c;本章是基于上一章所写若没安装mysql可以查看Linux下搭建mysql软件及登录和基本…...

【6】第一个Java程序:Hello World

一、引言 Java&#xff0c;作为一种广泛使用的编程语言&#xff0c;其强大的跨平台能力和丰富的库函数使其成为开发者的首选。对于初学者来说&#xff0c;编写并运行第一个Java程序是一个令人兴奋的时刻。本文将指导你使用Eclipse这一流行的集成开发环境&#xff08;IDE&#…...

pytorch神经网络训练(AlexNet)

导包 import osimport torchimport torch.nn as nnimport torch.optim as optimfrom torch.utils.data import Dataset, DataLoaderfrom PIL import Imagefrom torchvision import models, transforms 定义自定义图像数据集 class CustomImageDataset(Dataset): 定义一个自…...

构建大语言模型友好型网站

以大语言模型为代表的AI 技术迅速发展&#xff0c;将会影响原有信息网络的方式。其中一个明显的趋势是通过chatGPT 对话代替搜索引擎和浏览器来获取信息。 互联网时代&#xff0c;主要是通过网站&#xff08;website&#xff09;提供信息。网站主要为人类阅读的方式构建的。主要…...

Git代码冲突原理与三路合并算法

Git代码冲突原理 Git合并文件是以行为单位进行一行一行合并的&#xff0c;但是有些时候并不是两行内容不一样Git就会报冲突&#xff0c;这是因为Git会帮助我们进行分析得出哪个结果是我们所期望的最终结果。而这个分析依据就是三路合并算法。当然&#xff0c;三路合并算法并不…...

聆思CSK6大模型开发板英语评测类开源SDK详解

离线英文评测算法SDK 能力简介 CSK6 大模型开发套件可以对用户通过语音输入的英文单词进行精准识别&#xff0c;并对单词的发音、错读、漏读、多读等方面进行评估&#xff0c;进行音素级的识别&#xff0c;根据用户的发音给出相应的建议和纠正&#xff0c;帮助用户更好地掌握单…...

通用大模型VS垂直大模型,你更青睐哪一方?

这里写目录标题 一、通用大模型简介二、垂直大模型简介三、通用大模型与垂直大模型的比较四、如何选择适合的模型五、通用大模型和垂直大模型的应用场景六、总结 近年来&#xff0c;随着人工智能技术的飞速发展&#xff0c;大模型的应用越来越广泛。无论是自然语言处理、计算机…...

Python第二语言(十四、高阶基础)

目录 1. 闭包 1.1 使用闭包注意事项 1.2 小结 2. 装饰器&#xff1a;实际上也是一种闭包&#xff1b; 2.1 装饰器的写法&#xff08;闭包写法&#xff09; &#xff1a;基础写法&#xff0c;只是解释装饰器是怎么写的&#xff1b; 2.2 装饰器的语法糖写法&#xff1a;函数…...

python脚本之调用其他目录脚本

import sys# 添加新路径到搜索路径中 sys.path.append(/脚本父级)# 现在可以导入该路径下的模块了 from 脚本 import 方法方法()...

C# 事件(Event)定义及其使用

1.定义个委托和类 //委托 public delegate void ProductEventHandler(Product product);/// <summary> /// 产品 /// </summary> public class Product {public int Id { get; set; }public string Code { get; set; }public string Name { get; set; }private de…...

2.负载压力测试

负载压力测试是一种重要的系统测试方法&#xff0c;旨在评估系统在正常和峰值负载情况下的性能表现。 一、基本概念&#xff1a; 负载压力测试是在一定约束条件下&#xff0c;通过模拟实际用户访问系统的行为&#xff0c;来测试系统所能承受的并发用户数、运行时间、数据量等&…...

【AI工具】jupyter notebook和jupyterlab对比和安装

简单说&#xff0c;jupyterlab是jupyter notebook的下一代。 选择安装一个即可。 一、这里是AI对比介绍 Jupyter Notebook和JupyterLab都是基于Jupyter内核的交互式计算环境&#xff0c;但它们在设计和功能上有一些关键的区别&#xff1a; 用户界面&#xff1a; Jupyter Not…...

Linux 基本指令3

date指令 date[选项][格式] %Y--年 %m--月 %d--日 %H--小时 %M--分 %S--秒 中间可用其他符号分割&#xff0c;不能使用空格。 -s 设置时间&#xff0c;会返回设置时间的信息并不是改变当前时间 设置全部时间年可用-或者&#xff1a;分割日期和时间用空格分隔&#xff…...

在Linux系统中,可以使用OpenSSL来生成CSR(Certificate Signing Request)、PEM格式的公钥和PEM格式的私钥。

在Linux系统中&#xff0c;可以使用OpenSSL来生成CSR&#xff08;Certificate Signing Request&#xff09;、PEM格式的公钥和PEM格式的私钥。以下是生成这些文件的命令&#xff1a; 首先&#xff0c;生成私钥&#xff08;通常是以.key结尾&#xff0c;但可以转换成PEM格式&am…...

【2024最新华为OD-C/D卷试题汇总】[支持在线评测] 团队派遣(100分) - 三语言AC题解(Python/Java/Cpp)

🍭 大家好这里是清隆学长 ,一枚热爱算法的程序员 ✨ 本系列打算持续跟新华为OD-C/D卷的三语言AC题解 💻 ACM银牌🥈| 多次AK大厂笔试 | 编程一对一辅导 👏 感谢大家的订阅➕ 和 喜欢💗 🍓OJ题目截图 📎在线评测链接 团队派遣(100分) 🌍 评测功能需要订阅专栏…...

Python数据分析与机器学习在医疗诊断中的应用

文章目录 &#x1f4d1;引言一、数据收集与预处理1.1 数据收集1.2 数据预处理 二、特征选择与构建2.1 特征选择2.2 特征构建 三、模型选择与训练3.1 逻辑回归3.2 随机森林3.3 深度学习 四、模型评估与调优4.1 交叉验证4.2 超参数调优 五、模型部署与应用5.1 模型保存与加载5.2 …...

vite.config.js如何使用env的环境变量

了解下环境变量在vite中 官方文档走起 https://cn.vitejs.dev/guide/env-and-mode.html#env-variables-and-modes 你见到的.env,.env.production等就是放置环境变量的 官方文档说到.env.[mode] # 只在指定模式下加载,比如.env.development只在开发环境加载 至于为什么是deve…...

MySql几十万条数据,同时新增或者修改

项目场景&#xff1a; 十万条甚至更多的数据新增或者修改 问题描述 现在有十万条数据甚至更多数据&#xff0c;在这些数据中&#xff0c;有部分数据存在数据库中&#xff0c;有部分数据确是新数据&#xff0c;存在的数据需要更新&#xff0c;不存在的数据需要新增 原因分析&a…...

如何提高MySQL DELETE 速度

提高MySQL中DELETE操作的速度通常涉及多个方面&#xff0c;包括优化查询、索引、表结构、硬件和配置等。以下是一些建议&#xff0c;以及一些示例代码&#xff0c;用于帮助我们提高DELETE操作的速度。 1.提高MySQL DELETE 速度的方法 1.1 优化查询 只删除必要的行&#xff1a…...