Redis和Memcache的區別總結

來源:互聯網
上載者:User

總結一:

memcache官方定義

Free & open source, high-performance, distributed memory object caching system, generic in nature, but intended for use in speeding up dynamic web applications by alleviating database load.

redis官方定義

Redis is an open source, BSD licensed, advanced key-value store. It is often referred to as a data structure server since keys can contain strings, hashes, lists, sets and sorted sets.

著作權相同

它們都是使用的bsd協議,使用它的項目可以用於商業使用者,不必發布二次修改的代碼,可以修改原始碼。

資料類型

redis資料類型豐富,支援set liset等類型
memcache支援單一資料型別,需要用戶端自己處理複雜物件

持久性

redis支援資料落地持久化儲存
memcache不支援資料持久儲存

分布式儲存

redis支援master-slave複製模式
memcache可以使用一致性hash做分布式

value大小不同

memcache是一個記憶體緩衝,key的長度小於250字元,單個item儲存要小於1M,不適合虛擬機器使用

資料一致性不同

redis使用的是單執行緒模式,保證了資料按順序提交。
memcache需要使用cas保證資料一致性。CAS(Check and Set)是一個確保並發一致性的機制,屬於“樂觀鎖”範疇;原理很簡單:拿版本號碼,操作,對比版本號碼,如果一致就操作,不一致就放棄任何操作

cpu利用

redis單執行緒模式只能使用一個cpu,可以開啟多個redis進程

總結二:

1.Redis中,並不是所有的資料都一直儲存在記憶體中的,這是和Memcached相比一個最大的區別。
2.Redis不僅僅支援簡單的k/v類型的資料,同時還提供list,set,hash等資料結構的儲存。
3.Redis支援資料的備份,即master-slave模式的資料備份。
4.Redis支援資料的持久化,可以將記憶體中的資料保持在磁碟中,重啟的時候可以再次載入進行使用。
我個人認為最本質的不同是Redis在很多方面具備資料庫的特徵,或者說就是一個資料庫系統,而Memcached只是簡單的K/V緩衝

總結三:

redis和memecache的不同在於:

1、儲存方式:
memecache 把資料全部存在記憶體之中,斷電後會掛掉,資料不能超過記憶體大小
redis有部份存在硬碟上,這樣能保證資料的持久性。
2、資料支援類型:
redis在資料支援上要比memecache多的多。
3、使用底層模型不同:
新版本的redis直接自己構建了VM 機制 ,因為一般的系統調用系統函數的話,會浪費一定的時間去移動和請求。
4、運行環境不同:
redis目前官方只支援LINUX 上去行,從而省去了對於其它系統的支援,這樣的話可以更好的把精力用於本系統 環境上的最佳化,雖然後來微軟有一個小組為其寫了補丁。但是沒有放到主幹上

memcache只能當做緩衝,cache
redis的內容是可以落地的,就是說跟mongodb有些類似,然後redis也可以作為緩衝,並且可以設定master-slave

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.