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. 輸出結果