上一篇讲述了安装redis《Redis总结(一)Redis安装》,同时也大致介绍了redis的优势和应用场景。本篇着重讲解.NET中如何使用redis和C#。
Redis官网提供了很多开源的C#客户端。例如,Nhiredis ,ServiceStack.Redis ,StackExchange.Redis等。其中ServiceStack.Redis应该算是比较流行的。它提供了一整套从Redis数据结构都强类型对象转换的机制并将对象json序列化。所以这里只介绍ServiceStack.Redis,它也是目前我们产品中所使用的客户端。
ServiceStack.Redis地址:https://github.com/ServiceStack/ServiceStack.Redis
1. 建立一个控制台应用程序,并引用以下ServiceStack.Redis相关的四个类库。或者通过Nuget进行安装Redis常用组件ServiceStack.Redis。 下载示例代码。
2. 创建一个Redis操作的公用类RedisCacheHelper,
说明:RedisCacheHelper 使用的是客户端链接池模式,这样的存取效率应该是最高的。同时也更方便的支持读写分离,均衡负载。
3. 配置文件
1
2
3
4
5
6
|
<!-- redis Start --> <add key= "SessionExpireMinutes" value= "180" />
<add key= "redis_server_session" value= "127.0.0.1:6379" />
<add key= "redis_max_read_pool" value= "3" />
<add key= "redis_max_write_pool" value= "1" />
<!--redis end--> |
4. 测试程序调用
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
class Program
{
static void Main( string [] args)
{
Console.WriteLine( "Redis写入缓存:zhong" );
RedisCacheHelper.Add( "zhong" , "zhongzhongzhong" , DateTime.Now.AddDays(1));
Console.WriteLine( "Redis获取缓存:zhong" );
string str3 = RedisCacheHelper.Get< string >( "zhong" );
Console.WriteLine(str3);
Console.WriteLine( "Redis获取缓存:nihao" );
string str = RedisCacheHelper.Get< string >( "nihao" );
Console.WriteLine(str);
Console.WriteLine( "Redis获取缓存:wei" );
string str1 = RedisCacheHelper.Get< string >( "wei" );
Console.WriteLine(str1);
Console.ReadKey();
}
}
|
5. 输出结果