Memcached簡介
Memcached簡介
Memcached 是一個高性能的分布式內(nèi)存對象緩存系統(tǒng),用于動態(tài)Web應(yīng)用以減輕數(shù)據(jù)庫負(fù)載。它通過在內(nèi)存中緩存數(shù)據(jù)和對象來減少讀取數(shù)據(jù)庫的次數(shù),從而提高動態(tài)、數(shù)據(jù)庫驅(qū)動網(wǎng)站的速度。Memcached基于一個存儲鍵/值對的hashmap。其守護進程(daemon )是用C寫的,但是客戶端可以用任何語言來編寫,并通過Memcached協(xié)議與守護進程通信。
常用的命令
命令 | 說明 | 用法 |
---|---|---|
set | 設(shè)置key的值value | set key flags exptime bytes [noreply] value |
add | 添加key的值value(不覆蓋原值) | add key flags exptime bytes [noreply] value |
replace | 替換原來的值 | replace key flags exptime bytes [noreply] value |
append | 原來的值后面追加值 | append key flags exptime bytes [noreply] value |
prepend | 原來的值前面追加值 | prepend key flags exptime bytes [noreply] value |
get | 獲取存儲在key中的value | get key [...key1] |
delete | 刪除已存在的key | delete key [noreply] |
incr/decr | 對已存在的key的值進行自增/自減 | incr/decr key increment_value |
使用場景
- 對頻繁獲取的數(shù)據(jù)進行緩存(減輕DB壓力);
- 用鎖的機制控制流量;
- 多服務(wù)器間共享數(shù)據(jù)(比如session)
備注
Redis(SSDB)數(shù)據(jù)類型豐富,Memcached數(shù)據(jù)類型單一,Memcached是內(nèi)存式緩存系統(tǒng),Redis是更像是內(nèi)存式數(shù)據(jù)庫。兩者干嘛要比較呢????個人感覺Memcached+SSDB就可以支撐很多項目了,如果實在是那種實時要求,并發(fā)大,那可以考慮Redis。