在.NET平台使用Redis需要做如下准備工作:
創建一個新的Visual Studio應用或者打開一個已經存在的Visual Studio應用。
打開NuGet程序包
搜索並添加StackExchange.Redis程序包
使用redis做為數據緩存服務
string host = "192.168.200.131";
//取連接對象
ConnectionMultiplexer redis = ConnectionMultiplexer.Connect(host);
//取得DB對象
IDatabase db = redis.GetDatabase();
//設置數據對象
db.StringSet("User", "{Name:\"TOM\"}");
//添加數據對象
db.StringAppend("User", ",{Name:\"JACK\"}");
//取得數據對象
string user = db.StringGet("User");
Console.WriteLine(user);
發布消息
static void Main(string[] args)
{
string host = "192.168.28.106";
//取連接對象
ConnectionMultiplexer redis = ConnectionMultiplexer.Connect(host);
//設置數據對象
//取得訂閱對象
ISubscriber sub = redis.GetSubscriber();
//發布消息到channel:c1
sub.Publish("c1", "123");
//發送100萬個字符的消息
sub.Publish("c1", "zx".PadRight(1000000, 'x'));
string reader = "start send";
while(reader!="exit")
{
reader = Console.ReadLine();
sub.Publish("c1", reader);
}
Console.ReadLine();
}
訂閱消息
static void Main(string[] args)
{
string host = "192.168.28.106";
//取連接對象
ConnectionMultiplexer redis = ConnectionMultiplexer.Connect(host);
//設置數據對象
//取得訂閱對象
ISubscriber sub = redis.GetSubscriber();
//設置訂閱事件
sub.Subscribe("c1", new Action<RedisChannel, RedisValue>(GetMessage));
Console.Read();
Console.ReadLine();
}
/// <summary>
/// 獲取消息
/// </summary>
/// <param name="channel"></param>
/// <param name="message"></param>
static void GetMessage(RedisChannel channel, RedisValue message)
{
Console.WriteLine(channel);
Console.WriteLine(message);
}