.net core Redis库 CSRedis
2024-08-31 18:14:25
由于servicestack.redis收费,基于有人说StackExchange.Redis 使用会出现一些问题比如会超时,
找到了CSRedis这个库,很强大很实用。另外有兴趣的朋友还可以试试另一个支持Core的redis库NewLife.Redis
nuget Install-Package CSRedisCore
源码地址:https://github.com/2881099/csredis 经过了两年的洗礼,同胞们大可放心使用。
1、增加了 CSRedisClient 现实集群与连接池管理,和 RedisHelper 静态类快速上手
//普通模式
var
csredis =
new
CSRedis.CSRedisClient(
"127.0.0.1:6379,password=123,defaultDatabase=13,poolsize=50,ssl=false,writeBuffer=10240,prefix=key前辍"
);
//集群模式
var
csredis =
new
CSRedis.CSRedisClient(
null
,
"127.0.0.1:6371,password=123,defaultDatabase=11,poolsize=10,ssl=false,writeBuffer=10240,prefix=key前辍"
,
"127.0.0.1:6372,password=123,defaultDatabase=12,poolsize=11,ssl=false,writeBuffer=10240,prefix=key前辍"
,
"127.0.0.1:6373,password=123,defaultDatabase=13,poolsize=12,ssl=false,writeBuffer=10240,prefix=key前辍"
,
"127.0.0.1:6374,password=123,defaultDatabase=14,poolsize=13,ssl=false,writeBuffer=10240,prefix=key前辍"
);
//实现思路:根据key.GetHashCode() % 节点总数量,确定连向的节点
//也可以自定义规则(第一个参数设置)
//mvc分布式缓存注入 nuget Install-Package Caching.CSRedis
//初始化 RedisHelper
RedisHelper.Initialization(csredis,
value => Newtonsoft.Json.JsonConvert.SerializeObject(value),
deserialize: (data, type) => Newtonsoft.Json.JsonConvert.DeserializeObject(data, type));
//注册mvc分布式缓存
services.AddSingleton<IDistributedCache>(
new
Microsoft.Extensions.Caching.Redis.CSRedisCache(RedisHelper.Instance));
//提示:CSRedis.CSRedisClient 单例模式够用了,强烈建议使用 RedisHelper 静态类
RedisHelper.Set(
"test1"
,
"123123"
, 60);
RedisHelper.Get(
"test1"
);
//...函数名基本与 redis-cli 的命令相同
//使用缓存壳效果
var
t1 = RedisHelper.CacheShell(
"test1"
, 10, () => Test.Select.WhereId(1).ToOne());
var
t2 = RedisHelper.CacheShell(
"test"
,
"1"
, 10, () => Test.Select.WhereId(1).ToOne());
var
t3 = RedisHelper.CacheShell(
"test"
,
new
[] {
"1"
,
"2"
}, 10, notCacheFields =>
new
[] {
(
"1"
, Test.Select.WhereId(1).ToOne()),
(
"2"
, Test.Select.WhereId(2).ToOne())
});
//清空缓存
using (var conn = RedisHelper.Instance.ClusterNodes.Values.First().GetConnection()) { conn.Client.FlushAll(); }
来源:https://www.cnblogs.com/kellynic/p/9325816.html#commentform
最新文章
- CDN 技术详解(DNS,GSLB,Cache)
- Spring MVC4 纯注解配置教程
- socket编程的select模型
- 选项卡 tab切换
- cocos基础教程(11)事件分发机制
- (三)u-boot2013.01.01 for TQ210:《mkconfig分析》
- CF:322D - Ciel and Duel 贪心 或者 DP 我用的贪心 。。难道sort跟qsort是不一样的么?
- Triangles
- mysql编码和Java编码相应一览表
- Local System、Local Service與Network Service
- 常用sql语句整理:mysql
- 如何使用VS2013本地C++单元测试框架
- plsql 永久注册码适用个版本
- 使用DDL触发器同步多个数据库结构
- IntelliJ IDEA和Eclipse最常用的快捷键对应表:
- zw版【转发&#183;台湾nvp系列Delphi例程】HALCON FastThreshold2
- 2018-10-13 21:30:51 conversion of number systems
- scp 的时候提示WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!
- Django cache
- (转)对存储过程进行加密和解密(SQL 2008/SQL 2012)