由于 StackExchange.Redis 不可靠,导致 Microsoft.Extensions.Caching.Redis 不能放心使用。故使用 CSRedisCore 作为分布式缓存。
Package Name | NuGet | Downloads | |
---|---|---|---|
CSRedisCore | |||
Caching.CSRedis | IDistributedCache |
Install-Package Caching.CSRedis
var csredis = new CSRedis.CSRedisClient("127.0.0.1:6379,pass=123,defaultDatabase=13,ssl=false,writeBuffer=10240,poolsize=50,prefix=key前辍");
services.AddSingleton<IDistributedCache>(new Microsoft.Extensions.Caching.Redis.CSRedisCache(csredis));
var csredis = new CSRedis.CSRedisClient(null,
"127.0.0.1:6371,pass=123,defaultDatabase=11,poolsize=10,ssl=false,writeBuffer=10240,prefix=key前辍",
"127.0.0.1:6372,pass=123,defaultDatabase=12,poolsize=11,ssl=false,writeBuffer=10240,prefix=key前辍",
"127.0.0.1:6373,pass=123,defaultDatabase=13,poolsize=12,ssl=false,writeBuffer=10240,prefix=key前辍",
"127.0.0.1:6374,pass=123,defaultDatabase=14,poolsize=13,ssl=false,writeBuffer=10240,prefix=key前辍");
services.AddSingleton<IDistributedCache>(new Microsoft.Extensions.Caching.Redis.CSRedisCache(csredis));
IDistributedCache cache = xxxx;
object obj1 = new xxxx();
cache.SetObject("key1", obj1);
object obj2 = cache.GetObject("key1");
T obj3 = cache.GetObject<T>("key1");
IDistributedCache cache = xxxx;
cache.Remove("key1|key2");