1. 程式人生 > >redis 第 15 篇 工作記錄-redis和memcached有啥區別

redis 第 15 篇 工作記錄-redis和memcached有啥區別

同學,你要是現在還不知道redis和memcached是啥?那你趕緊百度一下redis入門和memcahced入門,簡單啟動一下,然後試一下幾個簡單操作,先感受一下。

redis和memcached的區別,不過說實話,memched是早些年各大網際網路公司常用的快取方案,但是現在近幾年基本都是redis,沒什麼公司用memcached了.

這個事兒吧,你可以比較出N多個區別來,但是我還是採取redis作者給出的幾個比較吧

 

1)Redis支援伺服器端的資料操作Redis相比Memcached來說,擁有更多的資料結構和並支援更豐富的資料操作,通常在Memcached裡,你需要將資料拿到客戶端來進行類似的修改再set回去。這大大增加了網路IO的次數和資料體積。在Redis中,這些複雜的操作通常和一般的GET/SET一樣高效。所以,如果需要快取能夠支援更復雜的結構和操作,那麼Redis會是不錯的選擇。

 

2)記憶體使用效率對比:使用簡單的key-value儲存的話,Memcached的記憶體利用率更高,而如果Redis採用hash結構來做key-value儲存,由於其組合式的壓縮,其記憶體利用率會高於Memcached。

 

3)效能對比:由於Redis只使用單核,而Memcached可以使用多核,所以平均每一個核上Redis在儲存小資料時比Memcached效能更高。而在100k以上的資料中,Memcached效能要高於Redis,雖然Redis最近也在儲存大資料的效能上進行優化,但是比起Memcached,還是稍有遜色。

 

4)叢集模式

memcached沒有原生的叢集模式,需要依靠客戶端來實現往叢集中分片寫入資料;但是redis目前是原生支援cluster模式的,redis官方就是支援redis cluster叢集模式的,比memcached來說要更好