C#中缓存数据库Memcached的基本使用方法

在本博客中,只是为大家展示一下Memcached的安装以及基本使用方法,过于深奥的知识点,在本篇文章中不会提到了.

首先把Memcached的下载链接地址分享给大家:  http://download.csdn.net/detail/hao930826/9406266

解压后请根据自己的电脑系统选择不同的版本进行使用,这里面包括了64位和32位的数据库版本。这里我只拿64位的版本进行举例说明了。

安装的方法需要使用控制台进行安装:

这里我把文件都放到了D盘中:

C#中缓存数据库Memcached的基本使用方法_第1张图片

控制台中这样输入即可,完成安装操作:

C#中缓存数据库Memcached的基本使用方法_第2张图片

安装之后,需要开启相关的服务才能正常使用:

接下来输入:


以上步骤完成后,去计算机的服务里面去查看是否开启成功了:

开始->控制面板->管理工具->服务,在里面找到这项:

C#中缓存数据库Memcached的基本使用方法_第3张图片

开启之后,就能正常使用了。

除此之外,扩展一些就说配置Memcached数据库的端口号和最大使用内存等问题:

其实也很简单只要在上面安装步骤,也就是在控制台中输入:  memcached.exe -p 11211 -m 64就是配置了端口号和最大内存,Memcached数据库的默认端口号为11211其实不用改就可以了。

为了验证我们安装的Memcached是否可以正常使用,接下来我们在控制台中继续输入接下来的语句:


因为我是把数据库安装在了本地计算机中,所以这里面的IP地址我只要输入这个就好了,如果说你把数据库安装在了服务器上面的话,这个IP地址就要写服务器的IP地址了,后面的11211就代表了Memcached的端口号,这个也是看实际情况而定的,默认是11211,所以我只要输入11211就好了。输入之后点击回车继续。

之后会来到一个空白页中,在这里我们使用键盘,点击Ctrl+"]",如果看见下面的内容,就代表了你安装的Memcached能够正常使用了


完成之后,我们就开始进行程序的演示了:首先分享个连接给大家,这里面包括了实例程序和相关的dll文件,在下面我们会使用到的:

http://download.csdn.net/detail/hao930826/9406257

1.首先我们要在引用中导入一下的dll文件,这些文件在上面下载后的文件中都有,在这里我们导入:


2.因为我创建的是web程序,很重要的一个步骤就是要写相关的配置文件内容:

控制台应用程序的配置文件内容:

   
     
       


     
     

   
   
     
       
         
         


       

       
     

   

   
     
       


     

     
   

 




Web Application的配置文件内容

 
   

   
     

   
   

   
     
       

       
         

         

         

         

       
     
   
 
 
 
   
     
   
     
     
   

   
     
     
     
     
     
     
     
   

 

 
   
     
   

 

 
   
     
       
       
     

     
   

 

 
   
     
       
     

   

   
     
     
       
         
         
       

     

   

 

 
 
   
 

 
   
     
       
       
       
       
     

   

   
     
   

   
     
       
       
     

   

   
     
       
       
     

   

   
     
       
       
       
     

   

   
     
       
       
     

   

   
     
     
     
     
   

   
     
   

 



 
     
       
         
         
     

   

 

 
   
     
       
       
     

     
       
       
     

   

 


这里说明一下,控制台应用程序应新建的是配置文件,就是app.config文件,而不是xml文件;web程序写在web.config里面就好了。

配置文件写好之后,后面的步骤就会变得相当简单容易了,接下来我贴上我的代码作为示例:

C#中缓存数据库Memcached的基本使用方法_第4张图片

这里面我们使用代码client.Store进行相关的数据操作,您将使用五种基本 memcached 命令执行最简单的操作。这些命令和操作包括:
  set
  add
  replace
  get
  delete
  前三个命令是用于操作存储在 memcached 中的键值对的标准修改命令

set命令是赋值语句,如果存在相应的键的话就去替换,没有的话就会新建。add命令是新增语句,但如果存在了相应的键值对的话,就会报错。replace就是替换和set差不多。get命令是取值命令,根据相应的键去取值,delete是删除命令,但是删除了一个不存在的键的话,会报错。

在上面的代码中我使用到了增值语句,最后我设置了这条数据的缓存时间,就是说超过了这个时间的话,这条数据就会被自动删除掉了。

Memcached不仅能保存简单数据类型的值,还能保存对象类型的值:

public void testMemcachedProviders()  
        {  
            string key = "myName";  
            string value = "Dylan";  
            bool result =false;  
            string val=string.Empty;  
            #region 存/取最简单的数据类型  
            //如果缓存中没有,就尝试着去存入缓存  
            if (DistCache.Get(key) == null)  
            {  
                //DistCache.DefaultExpireTime = 1200;//缓存时间  
                result = DistCache.Add(key, value);           //存数据    
                if (result)  
                {  
                    //如果存入成功,就试着去取  
                    Thread.Sleep(500);  
                    string ret = (string)DistCache.Get(key);            //读数据    
                    //Assert.AreEqual(value, ret);                     //验证    
                    if (ret != null)  
                    {  
                        Response.Write(ret);  
                        Response.Write("
"); } else { //取出来的值为null,直接移除该缓存对象 DistCache.Remove(key);//移除 // DistCache.RemoveAll();//移除所有 } } } else { //缓存中有,直接拿数据 string ret = (string)DistCache.Get(key); if (ret != null) { Response.Write(ret); Response.Write("
"); } else { DistCache.Remove(key); } } #endregion #region 存/取一个Person对象 0 Person person = new Person() {Id=007,Name="Dylan"};//new 一个Person对象的实例 //如果缓存中没有,则尝试着放入缓存 if (DistCache.Get("myObj") == null) { result = DistCache.Add("myObj", person); if (result) { Thread.Sleep(500); val = DistCache.Get("myObj").ToString(); if (val != null) { Response.Write(val); Response.Write("
"); } else { DistCache.Remove("myObj"); } } } else { //缓存中已经有该对象,就直接从缓存取 Person p = DistCache.Get("myObj"); val = person.ToString(); //也可以直接这样取 // val = DistCache.Get("myObj").ToString(); if (val != null) { Response.Write(val); Response.Write("
"); } else { DistCache.Remove("myObj"); } } #endregion }

上面这段程序就是如何保存对象类型的数据保存在数据库中了。

简单的演示步骤就是这些了,希望能够帮助到大家


你可能感兴趣的:(Memcached)