4款.NET开源的Redis客户端驱动库
前言
今天给大家推荐4款.NET开源免费的Redis客户端驱动库(以下排名不分先后
)。
Redis是什么?
Redis全称是REmote DIctionary Service,即远程字典服务。Redis 是一个使用C语言编写的、开源的(遵守 BSD 协议)、支持网络、可基于内存亦可持久化的日志型、Key-Value的NoSQL数据库。
NewLife.Redis
项目介绍
- NewLife.Redis 是一个Redis客户端组件,以高性能处理大数据实时计算为目标。
- Redis协议基础实现Redis/RedisClient位于X组件,本库为扩展实现,主要增加列表结构、哈希结构、队列等高级功能。
- 支持.NETCore/.NET4.0/.NET4.5,为大数据与消息队列而特别优化,线上单应用日均100亿调用量。
项目特性
- 在ZTO大数据实时计算广泛应用,200多个Redis实例稳定工作一年多,每天处理近1亿包裹数据,日均调用量80亿次。
- 低延迟,Get/Set操作平均耗时200~600us(含往返网络通信)。
- 大吞吐,自带连接池,最大支持1000并发。
- 高性能,支持二进制序列化。
GitHub开源地址
csredis
项目介绍
.NET Core或.NET Framework 4.0+ Redis客户端,用于Redis、Redis Sentinel(2.8)和Cluster。包括同步和异步客户端。
项目特性
- CSRedisClient和RedisHelper:保持所有方法名称与redis-cli一致
- 支持geo类型命令(需要redis-server 3.2或更高版本)
- 支持Redis Cluster redis-trib.rb
- 支持Redis Sentinel和主从模式
- 支持stream类型命令(需要redis-server 5.0及以上版本)
GitHub开源地址
FreeRedis
项目介绍
基于.NET的Redis客户端,支持 .NET Core 2.1+、.NET Framework 4.0+ 以及 Xamarin。它支持集群、哨兵、主从、发布订阅、Lua脚本、管道、事务、流、客户端缓存以及连接池等功能。
项目特性
- 所有方法名与 redis-cli 保持一致
- 支持 Redis 集群(服务端要求 3.2 及以上版本)
- 支持 Redis 哨兵模式
- 支持主从分离(Master-Slave)
- 支持发布订阅(Pub-Sub)
- 支持 Redis Lua 脚本
- 支持管道(Pipeline)
- 支持事务
- 支持 GEO 命令(服务端要求 3.2 及以上版本)
- 支持 STREAM 类型命令(服务端要求 5.0 及以上版本)
- 支持本地缓存(Client-side-cahing,服务端要求 6.0 及以上版本)
- 支持 Redis 6 的 RESP3 协议
GitHub开源地址
StackExchange.Redis
项目介绍
StackExchange.Redis是一个基于.NET的高性能Redis客户端,提供了完整的Redis数据库功能支持,并且具有多节点支持、异步编程模型、Redis集群支持等特性,使得与Redis数据库的交互更加灵活、高效。
项目特性
- 高性能的多路复用设计,可以高效地利用来自多个调用线程的共享连接
- 对redis节点配置进行抽象:客户端可以静默地协商多个redis服务器,以提高鲁棒性和可用性
- 方便访问完整的redis功能集
- 完整的双重编程模型,支持同步和异步使用,无需使用TPL的"同步转异步"
- 支持redis "cluster"
请注意,以上翻译结果以markdown格式输出。
GitHub开源地址
优秀项目和框架精选
该项目已收录到C#/.NET/.NET Core优秀项目和框架精选中,关注优秀项目和框架精选能让你及时了解C#、.NET和.NET Core领域的最新动态和最佳实践,提高开发效率和质量。坑已挖,欢迎大家踊跃提交PR,自荐(让优秀的项目和框架不被埋没
)。
https://github.com/YSGStudyHards/DotNetGuide/blob/main/docs/DotNet/DotNetProjectPicks.md
加入DotNetGuide技术交流群
1、提供.NET开发者分享自己优质文章的群组和获取更多全面的C#/.NET/.NET Core学习资料、视频、文章、书籍,社区组织,工具和常见面试题资源,帮助大家更好地了解和使用 .NET技术。
2、在这个群里,开发者们可以分享自己的项目经验、遇到的问题以及解决方案,倾听他人的意见和建议,共同成长与进步。
3、可以结识更多志同道合的开发者,甚至可能与其他开发者合作完成有趣的项目。通过这个群组,我们希望能够搭建一个积极向上、和谐友善的.NET技术交流平台,为广大.NET开发者带来更多的价值。
4款.NET开源的Redis客户端驱动库的更多相关文章
- ServiceStack.Redis客户端访问库几项事项
1)RedisClient的SetValue(string key, byte[]val)方法,如果val的长度为0,则redis服务器库中设置该key值失败. 2)PoolRedisClientMa ...
- 国人开源了一款超好用的 Redis 客户端,真香!!
大家都知道,Redis Desktop Manager 是一款非常好用的 Redis 可视化客户端工具,但可惜的是 v0.9.4 版本之后需要收费了: 这个工具不再免费提供安装包了,要对所有安装包收费 ...
- 《Dotnet9》系列-开源C# Winform控件库强力推荐
时间如流水,只能流去不流回! 点赞再看,养成习惯,这是您给我创作的动力! 本文 Dotnet9 https://dotnet9.com 已收录,站长乐于分享dotnet相关技术,比如Winform.W ...
- .NET redis 客户端开源组件 FreeRedis (继 CSRedisCore 之后重写)
什么是 FreeRedis FreeRedis 是一款 .NET redis 客户端开源组件,以 MIT 协议开源托管于 github,目前支持 .NET 5..NETCore 2.1+..NETFr ...
- 一款Redis客户端,可以作为Redis Desktop manager的有效补充或替代
一.由来 对于redis客户端,我和大多数人一样,都是用Redis Desktop Manager. 但我发现个问题,我的版本是0.9.1.771. 我这个版本有个问题,就是如果value太长的话,不 ...
- 500行代码了解Mecached缓存客户端驱动原理
原创不易,求分享.求一键三连 缓存一般是用来加速数据访问的效率,在获取数据耗时高的场景下使用缓存可以有效的提高数据获取的效率. 比如,先从memcached中获取数据,如果没有则查询mysql中的数据 ...
- 数据追踪系统Zipkin 及其 Zipkin的php客户端驱动hoopak
Zipkin是Twitter的一个开源项目,是一个致力于收集Twitter所有服务的监控数据的分布式跟踪系统,它提供了收集数据,和查询数据两大接口服务.Zipkin 是一款开源的分布式实时数据追踪系统 ...
- 阿里巴巴的26款Java开源项目
阿里巴巴的26款Java开源项目 开源展示了人类共同协作,成果分享的魅力.没有任何一家网络公司可以不使用开源技术,仅靠自身技术发展起来.“取之于开源,用之于开源,才能促进开源的良性发展”,阿里巴巴各个 ...
- 开源中国iOS客户端学习
开源中国iOS客户端学习 续写前言 <开源中国iOS客户端学习>续写前系列博客 http://blog.csdn.net/column/details/xfzl-kykhd.html ...
- 全球领先的redis客户端:SFedis
零.背景 这个客户端起源于我们一个系统的生产问题. 一.问题的发生 在我们的生产环境上发生了两次redis服务端连接数达到上限(我们配置的单节点连接数上限为8000)导致无法创建连接的情况.由于这个系 ...
随机推荐
- Unity中的PostProcessBuild:深入解析与实用案例
Unity中的PostProcessBuild:深入解析与实用案例 在Unity游戏开发中,我们经常需要在构建完成后对生成的应用程序进行一些额外的处理.这时,我们可以使用Unity提供的PostPro ...
- msyql的基本操作(增删改查)
一.SQL 语法要点 1.SQL 语句不区分大小写,但是数据库表名.列名和值是否区分,依赖于具体的 DBMS 以及配置. 例如:SELECT 与 select .Select 是相同的. 2.多条 S ...
- vue3中父组件与组件之间参数传递,使用(defineProps/defineEmits),涉及属性传递,对象传递,数组传递,以及事件传递
Vue3 中子父组件之间的通信 一.父组件传递参数到子组件 采用defineProps 传递属性 父组件: <template> <div> <h1>这是父组件&l ...
- WebSSH远程管理Linux服务器、Web终端窗口自适应(二)
上一篇:Gin+Xterm.js实现WebSSH远程Kubernetes Pod 支持用户名密码认证 支持SSH密钥认证 支持Web终端窗口自适应 支持录屏审计 Go SSH golang.org/x ...
- 用windows脚本命令netsh快速启用、禁用网络
用windows脚本命令netsh快速启用.禁用网络 不知道你有没有这种需求:公司单位里的网络是内网,有时需要连接手机热点wifi网络,这时就需要先禁用内网网卡,启用无线网卡.连接内网的时候又需要先禁 ...
- Oracle批量处理SQL
批量更新且更新字段数字需要递增 示例: DECLARE n int; -- 定义变量 BEGIN n:=1000010; --为n 赋值 FOR i IN (SELECT AGENCY.ID FROM ...
- 王道oj/problem21
网址:oj.lgwenda.problem/21 思路:先序遍历,中序遍历,后序遍历用递归实现:层序遍历用一个链队实现,出队一个元素,顺序入队他的左孩子和右孩子 代码: #define _CRT_SE ...
- 【工具】-Reverse-DIE(Detect-It-Easy)
关于 Detect It Easy,或缩写为"DIE"是一个用于确定文件类型的程序.Detect It Easy 是一个多功能的 PE 检测工具,基于 QT 平台编写,主要用于 P ...
- 优化nginx参数(基本通用参数)
全局域配置参数 worker_processes auto; worker_cpu_affinity auto; worker_rlimit_nofile 65530; 前两个参数用于开启nginx多 ...
- CentOS7挂载NTFS格式的硬盘
前言 一些NTFS格式的移动硬盘或U盘插在服务器上可能不会自动挂载,本文为手动挂载的步骤. 步骤 安装相关程序: yum install -y ntfs-3g 使用一些命令查看需要挂载的分区 # 查看 ...