MemCached簡單介紹

2021-08-25 17:57:08 字數 771 閱讀 7347

一、memcached是什麼?

memcached是乙個免費、開源、高效能、分布式、基於記憶體的物件快取系統。一般來說,使用memcached可以加速動態web程式(通過緩解資料庫負載)。它可以key-value(string,object)形式,儲存任意資料,如資料庫呼叫結果、api呼叫結果等。

memcached主要由4部分組成:

1. 客戶端軟體,記錄了所有有效memcached伺服器資訊;

2. 乙個基於客戶端的hash演算法,輸入的key通過該演算法找出特定memcached伺服器;

3. 伺服器軟體,在乙個內部hash表中儲存key-value;

4. 伺服器演算法,該演算法決定何時請出舊資料以及重用記憶體。

memcached的設計理念:

1. 簡單key/value儲存(每條記錄包括乙個key、乙個原生value值、乙個過期時間、乙個可選的flag),並且不關心value的型別,可以存放任意資料型別;

2. 邏輯分別放在客戶端與伺服器端;

3. 伺服器端彼此無感知;

4. 所有操作時間複雜度為o(1);

5. 到期資料自動過期,釋放出記憶體為其它應用使用。

理解誤區:

不要理解為使用了memcached會使程式跑得更快,memcached只是乙個開發工具,而不是**加速器,或者可以理解為資料庫中介軟體,memcached會減少你與資料庫的互動時間,從而感覺上是**"變快"了。

二、memcached架構圖

專案主項:

memcached 簡單介紹

memcached是一套分布式的快取系統,當初是danga interactive為了livejournal所發展的,但被許多軟體 如mediawiki 所使用。這是一套開放源 軟體,以bsd license授權協議發布。1 memcached缺乏認證以及安全管制,這代表應該將memcached伺服...

Redis與Memcached應用的簡單比較

這兩年redis火得可以,redis也常常被當作memcached 的挑戰者被提到桌面上來。關於redis與memcached的比較更是比比皆是。然而,redis真的在功能 效能以及記憶體使用效率上都超越了memcached嗎?下面內容來自redis作者在stackoverflow上的乙個回答,對應...

python對memcached的簡單操作

python memcached模組原生支援集群操作,其原理是在記憶體維護乙個主機列表,且集群中主機的權重值和主機在列表中重複出現的次數成正比。主機 權重 1.1.1.1 11.1 1.2 21.1 1.31 那麼在記憶體中主機列表為 host list 1.1.1.1 1.1.1.2 1.1.1....