搜索了一圈, 发现没有比较全面且简单的介绍如何在C#项目中使用redis的, 大部分都是零碎的文章,稍微组织了一下,希望对要用redis的人有帮助.
前提
1. Redis is an open source, BSD licensed, advanced key-value store, 简单说用来缓存数据,更多信息参照官网 http://redis.io/,很多大网站都在用这个, 参照 http://redis.io/topics/whos-using-redis.
2. Redis官方是没有直接支持在Windows上使用, 所以Microsoft Open Tech 团队开发了Redis on Windows , 最新版本2.8.9 宣传已经可以运用在正式站点上(之前的可能没有那么稳定).
3. 如果要在C#项目中使用, 还必须有用C#写的类库作为Client端, 用来从redis中读写数据, 可以参照 http://redis.io/clients, 这里列出了C#写的Client端的组件,我选了推荐的 ServiceStack.Redis, 可以从https://github.com/ServiceStack/ServiceStack.Redis 下载, 也可以通过 Nuget直接装到你的项目中, Nuget 命令: Install-Package ServiceStack.Redis.
步骤 (假设你已经下载好 redis on windows , 也通过nuget装好 ServiceStack.Redis组件)
1. 在你下载好的 redis on windows 项目, 找到bin目录, 里面会有redis-2.8.9.zip, 把这个解压到某个地方.
2. 用 Windows command 进入到解压的目录,运行 redis-server --service-install 把 redis server 安装成 window service来运行,这个service默认监听端口是6379, 然后启动服务. (更简单的做法是直接打开这个目录,双击运行redis-server.exe)
3. 我使用的是Console app做测试, 所以我已经通过nuget为这个Console app装好了ServiceStack.Redis 组件, 下面是全部代码.
using ServiceStack.Redis;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
var manage = new BasicRedisClientManager("localhost");
var client = manage.GetCacheClient();
client.Add("name", "dragon");
Console.WriteLine(client.Get<string>("name"));
Console.Read();
}
}
}
localhost代表你要操作的缓存服务器地址, 默认端口就是6379, 如果你要修改端口, 可以在安装 redis service的时候修改, 命令: redis-server --service-install --port 1001, 如果你修改了端口, localhost的参数就要改成 localhost:1001 来显示的指定端口.
redis支持多服务器来用做分布式缓存.
这里只是做个最简单的示例介绍, 如果你需要在项目中使用, 很多参数和配置需要做深入了解.