C#操作redis
Redis 是一个非关系型高性能的key-value数据库。在部分场合可以对关系数据库起到很好的补充作用。它提供了Java,C/C++,C#,PHP,JavaScript,Perl,Object-C,Python,Ruby,Erlang等客户端,使用很方便。
redis提供五种数据类型:string,hash,list,set及zset(sorted set)。
好了,话不多说,先安装redis吧。我这里提供的版本是64位的3.2.1.00 https://files.cnblogs.com/files/wangjifeng23/Redis-x64-3.2.100.zip ,其余版本可前往官网进行下载 http://download.redis.io/releases/ 。
下载好之后,新建文件夹,将文件解压。
解压完之后,开始进行redis安装。
1.键入cmd
2.指向redis安装路径 f: --> cd redis
3.redis安装指令 redis-server redis.windows.conf,出现以下图标即安装成功
打开redis客户端工具(redis-cli.exe)
使用set get设置获取值,如下所示即使用成功
好了,为了使用方便,我们可以把redis部署到服务上面自启动,然后使用第三方客户端软件RedisDesktopManager(下载链接: https://pan.baidu.com/s/1DAWFwlZQK0AJphOQEHQaXA 密码: jr5r)进行管理,让开发更加便捷。
如上所示使用cmd键入命令: redis-server --service-install redis.windows.conf
打开客户端,创建连接,输入localhost(本机服务),连接前确保redis服务已开启,端口为6379(主服务器)
如下图所示证明我们已经连接成功啦,左边就是我存储的4个键值对数据。
好了,接下来我们要在代码里实现对他的存储以及获取。
使用NuGet安装ServiceStack.Redis,这是微软提供已经封装好的对redis操作类。包含4个dll
连接redis服务器,读取以及存储
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; namespace redis { public partial class Login : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } public static ServiceStack.Redis.RedisClient client = new ServiceStack.Redis.RedisClient("127.0.0.1", 6379); public void login(object sender, EventArgs e) { //读取 string name = client.Get<string>("name"); string pwd = client.Get<string>("password"); //存储 client.Set<string>("name1", username.Value); client.Set<string>("password1", userpwd.Value); } } }
总结:
1 、Redis不仅仅支持简单的k/v类型的数据,同时还提供list,set,zset,hash等数据结构的存储。
2 、Redis支持数据的备份,即master-slave模式的数据备份。
3 、Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用。
4、Redis可以实现主从复制,实现故障恢复。
5、Redis的Sharding技术: 很容易将数据分布到多个Redis实例中