Memcached 分布式快取

2021-05-22 05:57:20 字數 1361 閱讀 6662

memcached是什麼?

memcached 是乙個高效能的分布式記憶體物件快取系統,用於動態web應用以減輕資料庫負載。它通過在記憶體中快取資料和物件來減少讀取資料庫的次數,從而提供動態、資料庫驅動**的速度。memcached基於乙個儲存鍵/值對的hashmap。其守護程序(daemon )是用c寫的,但是客戶端可以用任何語言來編寫,並通過memcached協議與守護程序通訊。但是它並不提供冗餘(例如,複製其hashmap條目);當某個伺服器s停止執行或崩潰了,所有存放在s上的鍵/值對都將丟失。

memcached由danga interactive開發,用於提公升livejournal.com訪問速度的。lj每秒動態頁面訪問量幾千次,使用者700萬。memcached將資料庫負載大幅度降低,更好的分配資源,更快速訪問。

如何使用memcached-server端?

在服務端執行:

# ./memcached -d -m 2048 -l 10.0.0.40 -p 11211

這將會啟動乙個占用2g記憶體的程序,並開啟11211埠用於接收請求。由於32位系統只能處理4g記憶體的定址,所以在大於4g記憶體使用pae的32位伺服器上可以執行2-3個程序,並在不同埠進行監聽。

如何使用memcached-client端?

在應用端包含乙個用於描述client的class後,就可以直接使用,非常簡單。有很前輩都有用到。現在我先把網上找到的一些資料拿出來,供初學者學習。

memcached官方站點:http://www.danga.com/memcached/

安裝幫助:windows下的.net+ memcached安裝

memcached .net客戶端:

1).net memcached client library

2)enyim.com memcached client

3)memcached providers

4) beit memcached

以上4個客戶端,我推薦使用第4個beit memcached。

現在memcached最新版本是1.4了,不過還沒有找到相關最新版本客戶端.net程式。

例子運用:

1 將commons.dll,icsharpcode.sharpziplib.dll,log4net.dll,memcached.clientlibrary.dll 等放到bin目錄

2 引用memcached.clientlibrary.dll

3 **

後記: 是個不錯的東西 ,使用起來也很方便,php ,ruby 的專案中用這個的很多,但是.net專案中用的較少(恕俺孤陋寡聞) 。希望有興趣的朋友們 多多交流 。

分布式快取 Memcached

分布式快取出於如下考慮,首先是快取本身的水平線性擴充套件問題,其次是快取大併發下的本身的效能問題,再次避免快取的單點故障問題 多副本和副本一致性 分布式快取的核心技術包括首先是記憶體本身的管理問題,包括了記憶體的分配,管理和 機制。其次是分布式管理和分布式演算法,其次是快取鍵值管理和路由。原文 什麼...

Memcached 分布式快取

memcached 是乙個高效能的分布式 記憶體物件快取系統,用於動態web應用以減輕 資料庫負載。它基於乙個 儲存鍵 值對的 hashmap 其守護程序 daemon 是用 c寫的,但是 客戶端可以用任何語言來編寫,並通過memcached協議與守護程序通訊。memcached 通過在記憶體中快取...

分布式快取 Memcached

分布式快取出於如下考慮,首先是快取本身的水平線性擴充套件問題,其次是快取大併發下的本身的效能問題,再次避免快取的單點故障問題 多副本和副本一致性 分布式快取的核心技術包括首先是記憶體本身的管理問題,包括了記憶體的分配,管理和 機制。其次是分布式管理和分布式演算法,其次是快取鍵值管理和路由。原文 什麼...