首页 > 代码库 > Redis的配置和使用

Redis的配置和使用

下载Redis:  https://github.com/dmajkic/redis/downloads

学习地址:http://bbs.paris8.org/viewthread.php?tid=6919&page=1

      Redis是一个开源的,使用C语言编写,面向“键/值”对类型数据的分布式NoSQL数据库系统,特点是高性能,持久存储,适应高并发的应用场景。Redis纯粹为应用而产生,它是一个高性能的key-value数据库,并且提供了多种语言的API
     性能测试结果表示SET操作每秒钟可达110000次,GET操作每秒81000次(当然不同的服务器配置性能不同)。
     Redis目前提供五种数据类型:string(字符串),list(链表), Hash(哈希),set(集合)及zset(sorted set)(有序集合)

Redis与Memcached的比较:
1.Memcached是多线程,而Redis使用单线程.
2.Memcached使用预分配的内存池的方式,Redis使用现场申请内存的方式来存储数据,并且可以配置虚拟内存。
3.Redis可以实现持久化,主从复制,实现故障恢复。
4.Memcached只是简单的key与value,但是Redis支持数据类型比较多。


1. 选择一个版本进行下载,压缩包中包括32位和64位的安装工具。我们这里使用32位的。

     下载解压后的文件如下图:

        

    2. 在D建立一个redis 文件夹(当然建在其他盘也可以),然后把上面解压的32bit文件夹下面的所有文件拷贝到redis文件夹里面.

        

3.打开服务器端

   通过CMD命令行打开服务器端,首先通过命令行转到d:\redis文件夹,

   然后输入如下命令 redis-server.exe redis.conf

       

 4.打开客户端

   服务器端的CMD命令行不要关闭,再单独打开一个CMD命令行,切换到d:\redis文件夹,

   输入如下命令:redis-cli.exe -h 127.0.0.1 -p 6379

        

   然后输入 set pwd 123456

                  get pwd

    获取返回值成功,说明服务器端配置成功,

       

     以上是redis的安装与配置

5 使用Redis

和MongoDB一样,在.NET中使用Redis其实也是使用第三方驱动 .NET中怎样使用Redis存储数据.在.net中比较常用的客户端类库是ServiceStack,看下通过servicestack怎样存储数据。

   DLL下载:https://github.com/ServiceStack/ServiceStack.Redis

   下载完成后,DLL中包括四个DLL文件,然后把这四个文件添加到自己的项目中。

     

    Redis中包括四种数据类型,Strings, Lists,  Sets, Sorted Sets

    接下来我们一一看这四种类型的用法

   5.1.连接redis服务器

[csharp] view plaincopy
  1. RedisClient client;  
  2. private void button1_Click(object sender, EventArgs e)  
  3. {  
  4.     //连接服务器  
  5.      client = new RedisClient("127.0.0.1",6379);  
  6. }  

    5.2.Strings类型
         Strings能存储字符串,数字等类型,浮点型等.NET中的基本类型

[csharp] view plaincopy
  1. private void button2_Click(object sender, EventArgs e)  
  2.      {  
  3.          //存储用户名和密码  
  4.          client.Set<string>("username","524300045@qq.com");  
  5.          client.Set<int>("pwd", 123456);  
  6.          string username = client.Get<string>("username");  
  7.          int pwd=client.Get<int>("pwd");  
  8.   
  9.          client.Set<decimal>("price", 12.10M);  
  10.          decimal price = client.Get<decimal>("price");  
  11.          MessageBox.Show(price.ToString());  
  12.   
  13.          MessageBox.Show("用户名:"+username+",密码:"+pwd.ToString());  
  14.      }