結論
應該說memcached和redis都能很好的滿足解決我們的問題,它們效能都很高,總的來說,可以把redis理解為是對memcached的拓展,是更加重量級的實現,提供了更多更強大的功能。具體來說:
1.效能上:
效能上都很出色,具體到細節,由於redis只使用單核,而memcached可以使用多核,所以平均每乙個核上redis在儲存小資料時比
memcached效能更高。而在100k以上的資料中,memcached效能要高於redis,雖然redis最近也在儲存大資料的效能上進行優化,但是比起 memcached,還是稍有遜色。
2.記憶體空間和資料量大小:
memcached可以修改最大記憶體,採用lru演算法。redis增加了vm的特性,突破了物理記憶體的限制。
3.操作便利上:
memcached資料結構單一,僅用來快取資料,而redis支援更加豐富的資料型別,也可以在伺服器端直接對資料進行豐富的操作,這樣可以減少網路io次數和資料體積。
4.可靠性上:
memcached不支援資料持久化,斷電或重啟後資料消失,但其穩定性是***的。redis支援資料持久化和資料恢復,允許單點故障,但是同時也會付出效能的代價。
5.應用場景:
memcached:動態系統中減輕資料庫負載,提公升效能;做快取,適合多讀少寫,大資料量的情況(如人人網大量查詢使用者資訊、好友資訊、文章資訊等)。
需要慎重考慮的部分
1.memcached單個key-value大小有限,乙個value最大只支援1mb,而redis最大支援512mb
2.memcached只是個記憶體快取,對可靠性無要求;而redis更傾向於記憶體資料庫,因此對對可靠性方面要求比較高
3.從本質上講,memcached只是乙個單一key-value記憶體cache;而redis則是乙個資料結構記憶體資料庫,支援五種資料型別,因此redis除單純快取作用外,還可以處理一些簡單的邏輯運算,redis不僅可以快取,而且還可以作為資料庫用
4.新版本(3.0)的redis是指集群分布式,也就是說集群本身均衡客戶端請求,各個節點可以交流,可拓展行、可維護性更強大。
memcache和redis的區別
redis和memecache的不同在於 1 儲存方式 memecache 把資料全部存在記憶體之中,斷電後會掛掉,資料不能超過記憶體大小 redis有部份存在硬碟上,這樣能保證資料的永續性。2 資料支援型別 redis在資料支援上要比memecache多的多。3 使用底層模型不同 新版本的redi...
Redis和Memcache的區別
redis和memcache都是基於記憶體的資料儲存系統。memcached是高效能分布式記憶體快取服務 redis是乙個開源的key value儲存系統。與memcached類似,redis將大部分資料儲存在記憶體中,支援的資料型別包括 字串 雜湊 表 鍊錶 等資料型別的相關操作。下面我們來進行來...
Redis和Memcache的區別
redis和memcache的不同點 1 儲存方式 redis和memcache都是將資料存放在記憶體中,都是記憶體資料庫。memcache把資料全部存在記憶體之中,資料不能超過記憶體大小,斷電後會掛掉,掛掉後資料不可恢復。redis可以定期儲存到磁碟 持久化 這樣能保證資料的永續性。reids若資...