吹牛
沒接觸過MemCached,也沒有打算要學習它,本人做web起步晚(有365天這樣),近兩周來是想了解一下asp.net的緩存和Session的工作原理,但"上錯花轎遇到狼",便開始對MemCached產生好感覺,官網上看看其.net客戶端,發現都是使用其文本協議現實現,於是突發其想,自己來實現個基於二進制協議的.net客戶端(算是給.net打氣還是丟臉呢?),並以此實現了asp.net的分布式OutputCache和分布式Session。當然,我實現的未必好,個人能力有限,時間也比較少。
描述
Memcached 是一個高性能的分布式內存對象緩存系統,用於動態Web應用以減輕數據庫負載。它通過在內存中緩存數據和對象來減少讀取數據庫的次數,從而提供動態、數據庫驅動網站的速度。Memcached基於一個存儲鍵/值對的hashmap。其守護進程(daemon )是用C寫的,但是客戶端可以用任何語言來編寫,並通過memcached協議與守護進程通信。這段落引用自百度百科,MemCached網站是http://memcached.org/,二進制協議的webi是http://code.google.com/p/memcached/wiki/BinaryProtocolRevamped
正文
我不想在此隨筆就把全部內容寫完,因為可能比較多,我會寫好的每一篇的鏈接放到此頁面中,做一個小小的系列來講解:
MemCached相關下載:點擊下載 壓縮包包含x86和x64版的Memcached服務端、本人寫的memcached管理器(MemCachedManager.exe)、C#實現的memecahced二進制協議調用組件MemCachedLib.dll
下載包包后,可以直接啟動管理器來對memcached服務端的添加、刪除、修改、停止等,還可以簡單的通過命令與服務端進行交互。
能提供MemcacheLib的實現代碼嗎?
當然能,留着發霉是不好的,后期我會繼續維護,如果可能,放到開源服務上(怕是Memcached越來越沒人鳥)
這里是整個解決方案,大家可以下來看看我拙劣的代碼,代碼有注釋,將就一下,周末我再把上面的空白補充。
MemCached二進制協議請求包詳解
敬請關注
Memcached二進制協議響應包詳解
敬請關注
通過MemcachedLib實現自己的緩存提供者
敬請關注
通過MemcachedLib實現自己的Session提供者
敬請關注