程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> Redis 學習筆記(C#),

Redis 學習筆記(C#),

編輯:C#入門知識

Redis 學習筆記(C#),


Redis安裝及簡單操作                                                                  

Windows下安裝步驟:

1. 第一步當然是先下載咯~  地址:https://github.com/dmajkic/redis/downloads

    (根據自己實際情況選擇是下32位還是64位)

     下載下來的文件如下圖:

     

 

2.  打開Redis的服務端

     方法一:雙擊上圖redis-server.exe(這是最簡單粗暴的方式)

     方法二:也可以通過命令行打開(比如我這些文件是放在D:\Program\Redis\Redis\redis-2.4.5-win32-win64\64bit)

                在命令行敲入如下命令(目錄需要改成你自己放的文件位置)

                

      不管是哪種方法,最終如上圖所示,Server Started,即服務端已經開啟了

      這時候注意,這個cmd窗口不要關閉,這是服務端,得讓他一直在這候著。。。。

3.  打開客戶端

    通過cd命令,切換到文件保存的目錄,

    再輸入redis-cli.exe -h 127.0.0.1 -p 6379 (由於服務端就在我本地,所以直接用127.0.0.1,如果是遠程服務器,則輸入服務器Ip;6379是redis默認端口號,也可以在redis.conf裡修改端口號配置)

     直接上圖,比較直觀

    

至此所有准備工作已經完畢。

   趕緊開始我們的redis之旅吧~~~~~~

 

在客戶端輸入 set testKey1 1qaz    保存鍵(testKey1)對應的值(1qaz)

再通過get獲取testKey1的值

      

ho~ 很激動,set get都成功執行了!

 

問題來了,命令行是可以操作了,但是我的程序怎麼來操作redis呢?

莫急,下面我就以.net C#為例,介紹怎麼通過C#操作redis

 

在.Net中使用Redis                                                                      

其實呢,redis是有第三方驅動的,可以支持多種語言C#,PHP,JAVA。。。。

在.Net中使用Redis,官方推薦的有兩個:ServiceStack.Redis和StackExchange.Redis

在.Net中使用Redis 之 ServiceStack.Redis                                        

ServiceStack.Redis下載地址:https://github.com/ServiceStack/ServiceStack.Redis

如果上面地址下載失敗,直接下我這個包吧 http://files.cnblogs.com/files/zhangddleon/ServiceStack.Redis.zip

下載下來之後,要用到的就4個dll

現在,我們來新建一個控制台程序,並將上面的4個dll引用到我們的項目中

class Program
    {
        private static void Main(string[] args)
        {
            try
            {
                RedisClient redisClient = new RedisClient("127.0.0.1", 6379);
                bool b1 = redisClient.Set("testKey1", "testValue111");
                bool b2 = redisClient.Set("testKey2", "testValue222", DateTime.Now.AddSeconds(5)); //設置過期時間為5s
                string value1 = redisClient.Get<string>("testKey1");
                string value2 = redisClient.Get<string>("testKey2");
                Console.WriteLine("value1:" + value1 + ",value2:" + value2);
                Thread.Sleep(6000);
                string value22 = redisClient.Get<string>("testKey2");
                Console.WriteLine("value22:" + value22);     //testKey2已過期,value22為空  
                Console.ReadLine();
            }
            catch (Exception ex)
            {

                throw ex;
            }
        }
    }

這就是通過ServiceStack,在.Net中使用Redis的方法。

但是現在最新版的ServiceStack已經商業化了,加入了許多限制,比如一小時最多只能6000請求,官方說明如下:

造孽,有點人用,就開始要收費!!

天無絕人之路,ServiceStack收費了,不還有StackExchange嘛~

那我們就一起來學下StackExchange.Redis的用法吧

(攻城獅就是勤奮好學的代言人)

 

在.Net中使用Redis 之 StackExchange.Redis                                     

安裝StackExchange.Redis

 搜索StackExchange.Redis,安裝

安裝好之後,打開References,看看裡面是不是有StackExchange.Redis

碼農開始碼代碼

class Program
    {
        static void Main(string[] args)
        {
            //ConnectionMultiplexer redis = ConnectionMultiplexer.Connect("127.0.0.1");
            ConnectionMultiplexer client = ClientMgr.GetClient("127.0.0.1");

            IDatabase db = client.GetDatabase();
            db.StringSet("testKey1", "aaa");
            db.StringAppend("testKey1", "bbb");
            string value = db.StringGet("testKey1");
            Console.WriteLine(value);    //輸出aaabbb
        }

        public class ClientMgr
        {
            private static readonly object locker = new object();
            private static  ConnectionMultiplexer client;
            public static ConnectionMultiplexer GetClient(string connectionStr)
            {
                if (client == null)
                {
                    lock (locker)
                    {
                        if (client == null)
                        {
                            client = ConnectionMultiplexer.Connect(connectionStr);
                        }
                    }
                }
                return client; 
            }
        }
        
    }

好了,StackExchange.Redis的基本用法就是這樣的。

如有問題或者高見,大家可以一起討論,共同進步~

 

參考鏈接: http://www.runoob.com/redis/redis-install.html

 

 

 

    

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved