国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > Redis > 正文

Redis和Memcache的區別總結

2020-10-29 21:51:07
字體:
來源:轉載
供稿:網友

總結一:

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

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 长治县| 甘泉县| 北安市| 久治县| 黎川县| 龙江县| 龙海市| 乌兰浩特市| 林甸县| 沾益县| 双鸭山市| 莱阳市| 昆山市| 舞阳县| 阿克陶县| 永昌县| 汤原县| 南投市| 普安县| 南澳县| 南乐县| 杭锦旗| 定襄县| 广平县| 安阳县| 泸西县| 多伦县| 巴中市| 左云县| 遂平县| 台前县| 万源市| 青阳县| 泉州市| 醴陵市| 浦江县| 同仁县| 昌图县| 平原县| 惠州市| 青川县|