亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

memcached緩存機制+微軟緩存機制使用詳解

2019-11-17 01:30:15
字體:
來源:轉載
供稿:網友

memcached緩存機制+微軟緩存機制使用詳解

1、 why Memcached

1.1 一臺web服務器上,iis接收的請求數是有限的,當訪問量超大的時候,網站訪問就會遇到瓶頸了,處理方式就是運用多了服務器把請求數分流(集群),對外公布的就一個公共的ip。

1.2 當數據訪問量有10w時候,通過3臺服務器分流請求,每臺即承擔了3.3w個請求,當用戶登錄的時候,如何共享登錄信息就成為需要解決的問題(如把登錄信息放到數據庫中,性能會很差),這就是分布式緩存的運用場景。

2、 Memcached基本介紹

2.1 key最大:255字節,value最大:1m,{key:key1,value:123}

3、Windows下使用Memcache

3.1 下載memcache:www.code.jellycan.com/Memcache

3.2 安裝服務:cmd---Memcached.exe –d install

3.3 啟動服務:cmd---Memcached.exe –d start (restart 重啟,stop關閉)

3.4 檢查服務是否啟動:連接到Memcache控制臺:telnet 127.0.0.1 11211,回車,輸入命令:stats 檢查當前服務狀態。

3.5 卸載Memcached.exe –d uninstall

遇到問題:如無法啟動此程序,解決方法:下載MSVCR71.dll,安裝上即可。

3.6 增刪改查輸命令方式

3.6.1 add keyname 0 0 5 回車 //第一個0是一個數字,第二個是過期時間,單位秒,0表示不限期,5表示value長度,如keyname存在,則不做操作

12345 //value內容

3.6.2 get keyname //得到相應的value的值

3.6.3 delete keyname //刪除

3.6.4 set keyname 0 0 5 回車 //如果沒有則添加,如有就更新

12345

3、 c#下操作memcache

4、 微軟緩存方式

demo

業務邏輯層:

接口:ICacheManager

1 public interface ICacheManager2     {3         object Get(string key);4         void Set(string key, object value);5         void Set(string key, object value, int timeout);6         void Remove(string key);7         void RemoveAll();8     }

CacheFactory類:

 1 public class CacheFactory 2     { 3         PRivate static ICacheManager _instance = null; 4         private static object m_LockObj = new object(); 5         private CacheFactory() { } 6         static CacheFactory() 7         { 8             GetInstance(); 9         }10         public static ICacheManager GetInstance()11         {12             if (_instance == null)13             {14                 lock (m_LockObj)15                 {16                     if (_instance == null)17                     {18                         string cacheType = ConfigurationSettings.AppSettings["CacheType"];19                         if (cacheType == "MemCacheManager")20                             _instance = new MemCachedManager();21                         else22                             _instance = new MsCacheManager();23                     }24                 }25             }26             return _instance;27         }28     }

MemCachedManager類:

 1 public class MemCachedManager: ICacheManager 2     { 3         private MemcachedClient m_CacheManager; 4  5         public MemCachedManager() 6         { 7             m_CacheManager = MemcachedClient.GetInstance("CachePS"); 8         } 9         public void Set(string key, object value)10         {11             m_CacheManager.Set(key, value);12         }13         public void Set(string key, object value, int timeout)14         {15             m_CacheManager.Set(key, value, DateTime.Now.AddMinutes(timeout));16         }17         public object Get(string key)18         {19             return m_CacheManager.Get(key);20         }21         public void Remove(string key)22         {23             m_CacheManager.Delete(key);24         }25         public void RemoveAll()26         {27             m_CacheManager.FlushAll();28         }29     }

MsCacheManager類:

 1 public class MsCacheManager : ICacheManager 2     { 3         private BaseCacheDAL m_CacheManager; 4  5         public MsCacheManager() 6         { 7             m_CacheManager = new BaseCacheDAL("CachePS"); 8         } 9 10         public object Get(string key)11         {12             return m_CacheManager.GetCache(key);13         }14 15         public void Set(string key, object value)16         {17             m_CacheManager.SetCache(key, value, 0);18         }19 20         public void Set(string key, object value, int timeout)21         {22             m_CacheManager.SetCache(key, value, timeout);23         }24 25         public void Remove(string key)26         {27             m_CacheManager.Remove(key);28         }29 30         public void RemoveAll()31         {32             m_CacheManager.RemoveAll();33         }34     }

調用:

 1  public static DataTable GetCarPList(int UserId) 2         { 3             DataTable dt; 4             dt = cacheManger.Get(CacheKey.GetCarPList_Key()) as DataTable; 5             if (dt == null) 6             { 7                 string sql = string.Format("select C.CarId,C.ProId,C.UserId,C.BuyNumber,P.ProName,P.Price,P.ProImage,P.Stock  from Car C inner join Product P on C.ProId=P.ProId where C.UserId={0}", UserId); 8                 dt = SqlHelper.ExecuteDataTable(com.Model.Base.DataBaseEnum.ruanmou, sql, CommandType.Text, null); 9                 cacheManger.Set(CacheKey.GetCarPList_Key(), dt, 60);10             }11             return dt;12         }

web.config重要節點配置:

1 <appSettings>2     <add key="CacheType" value="MsCacheManager"/>3     <!--<add key="CacheType" value="MemCacheManager"/>-->4   </appSettings>
1 <configSections>2     <section name="dataConfiguration" type="Microsoft.Practices.EnterpriseLibrary.Data.Configuration.DatabaseSettings, Microsoft.Practices.EnterpriseLibrary.Data, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>3     <section name="cachingConfiguration" type="Microsoft.Practices.EnterpriseLibrary.Caching.Configuration.CacheManagerSettings, Microsoft.Practices.EnterpriseLibrary.Caching, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>4     <section name="enterpriseLibrary.ConfigurationSource" type="Microsoft.Practices.EnterpriseLibrary.Common.Configuration.ConfigurationSourceSection, Microsoft.Practices.EnterpriseLibrary.Common, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>5     <section name="memcachedgarden" type="System.Configuration.NameValueSectionHandler"/>6   </configSections>
 1 <cachingConfiguration defaultCacheManager="CachePS"> 2     <cacheManagers> 3       <add expirationPollFrequencyInSeconds="120" maximumElementsInCacheBeforeScavenging="1000" numberToRemoveWhenScavenging="10" backingStoreName="Null Storage" type="Microsoft.Practices.EnterpriseLibrary.Caching.CacheManager, Microsoft.Practices.EnterpriseLibrary.Caching, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" name="CachePS"/> 4     </cacheManagers> 5     <backingStores> 6       <add encryptionProviderName="" type="Microsoft.Practices.EnterpriseLibrary.Caching.BackingStoreImplementations.NullBackingStore, Microsoft.Practices.EnterpriseLibrary.Caching, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" name="Null Storage"/> 7     </backingStores> 8   </cachingConfiguration> 9   <enterpriseLibrary.ConfigurationSource selectedSource="System Configuration Source">10     <sources>11       <add name="System Configuration Source" type="Microsoft.Practices.EnterpriseLibrary.Common.Configuration.SystemConfigurationSource, Microsoft.Practices.EnterpriseLibrary.Common, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>12     </sources>13   </enterpriseLibrary.ConfigurationSource>14   <memcachedgarden>15     <add key="CachePS" value="127.0.0.1:11211"/>16   </memcachedgarden>


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久久黄色av| 亚洲成色777777女色窝| 91在线看www| 成人黄色av免费在线观看| 精品久久久999| 97视频在线观看视频免费视频| 日韩在线高清视频| 欧美激情一级二级| 成人两性免费视频| 91精品啪aⅴ在线观看国产| 97色在线观看| 日韩综合视频在线观看| 精品国产999| 午夜伦理精品一区| 国产精品国产亚洲伊人久久| 最新的欧美黄色| 亚洲wwwav| 久久久久久69| 亚洲女同精品视频| 一区二区三区四区在线观看视频| 国产69精品久久久久9| 国产精品观看在线亚洲人成网| 亚洲成人国产精品| 国产mv免费观看入口亚洲| 国产精品视频免费观看www| 国产专区精品视频| 久久国产精品99国产精| 久久精品国产久精国产思思| 成人黄色激情网| 热草久综合在线| 亚洲永久在线观看| 日韩精品在线视频观看| 777777777亚洲妇女| 97国产在线视频| 免费97视频在线精品国自产拍| 国产精品中文字幕久久久| 日韩av一区二区在线| 91精品免费视频| 亚洲成人精品视频在线观看| 亚洲精品二三区| 欧美一区视频在线| 精品久久久中文| 欧美色道久久88综合亚洲精品| 国产成人精品在线播放| 伊人久久男人天堂| 亚洲精品美女视频| 久久69精品久久久久久久电影好| 国产精品99久久99久久久二8| 亚洲人成网7777777国产| 久久影院模特热| 91免费国产网站| 91po在线观看91精品国产性色| 欧美极品少妇与黑人| 国产成人激情视频| 国产精品久久久久aaaa九色| 日本久久精品视频| www.欧美三级电影.com| 中文字幕亚洲天堂| 国产成人精品视频| 日韩av成人在线观看| 亚洲自拍另类欧美丝袜| 国产91色在线| 亚洲老头同性xxxxx| 51色欧美片视频在线观看| 日韩视频免费中文字幕| 亚洲美女av在线播放| 日韩免费在线看| 国产精品成人在线| 精品国产1区2区| 在线视频亚洲欧美| 亚洲午夜精品久久久久久久久久久久| 久久久免费高清电视剧观看| 国产成人91久久精品| 亚洲国产精品久久| 亚洲综合中文字幕在线观看| 久久综合久中文字幕青草| 精品国偷自产在线| 国产香蕉精品视频一区二区三区| 国产精品国产三级国产专播精品人| 日韩视频中文字幕| 最近2019中文字幕第三页视频| 在线视频欧美性高潮| 欧美剧在线观看| 日韩一区二区欧美| 国产精品自产拍在线观看中文| 555www成人网| 97人人模人人爽人人喊中文字| 亚洲成在人线av| 性色av一区二区三区| 欧美国产日韩免费| 欧美丰满少妇xxxxx| 亚洲japanese制服美女| 亚洲天堂视频在线观看| 91色在线视频| 伊人久久久久久久久久久久久| 国产成人aa精品一区在线播放| 久久精品色欧美aⅴ一区二区| 久久久久久久久国产精品| 国产精品1区2区在线观看| 美女精品久久久| 中文字幕在线看视频国产欧美在线看完整| 国产成人精品久久亚洲高清不卡| 最近2019中文字幕大全第二页| 亚洲精品v欧美精品v日韩精品| 国产成人一区二区在线| 日韩一区二区精品视频| 久久久久久久999精品视频| 日本精品中文字幕| 国产成人av网| 成人做爽爽免费视频| 国产精品美女久久| 91精品国产色综合| 国产91免费观看| 亚洲国产日韩欧美在线图片| 国产日韩精品入口| 欧美在线视频在线播放完整版免费观看| 美女久久久久久久久久久| 亚洲高清免费观看高清完整版| 色99之美女主播在线视频| 日韩中文字幕不卡视频| 欧美一级淫片丝袜脚交| 国产不卡av在线| 国产午夜精品一区二区三区| 国产99视频在线观看| 国产精品电影在线观看| 91免费的视频在线播放| 欧美做爰性生交视频| 日韩欧美精品免费在线| 国产精品丝袜白浆摸在线| 亚洲人成人99网站| 热99精品只有里视频精品| 亚洲影院色无极综合| 亚洲国语精品自产拍在线观看| 久久精品在线视频| 欧美精品在线看| 亚洲片国产一区一级在线观看| 日韩av在线最新| 国产精品高潮粉嫩av| 欧美限制级电影在线观看| 在线视频国产日韩| 精品亚洲精品福利线在观看| 热99久久精品| 国产精品扒开腿做爽爽爽的视频| 91国内揄拍国内精品对白| 视频在线观看一区二区| 欧美黄色性视频| 久久久极品av| 亚洲第一色中文字幕| 亚洲欧美综合另类中字| 亚洲白虎美女被爆操| 国产精品丝袜久久久久久高清| 欧美激情在线一区| 欧美激情精品久久久久久久变态| 国产一区二区在线免费| 精品露脸国产偷人在视频| 久久综合久中文字幕青草| 亚洲欧美精品在线| 久热99视频在线观看| 2018日韩中文字幕| 中文字幕欧美国内| 亚洲欧美日韩精品久久奇米色影视| 久久97久久97精品免视看| 中文字幕国产精品久久| 亚洲国产高清自拍|