redis存储数据类型_Redis与Memcahe的区别最全整理
經常看到大家只能對比redis和memecache的前兩項區別【持久化】和【數據類型】,這里,給整理了最全的memcache和redis的區別,歡迎交流哦
緩存
(1)【持久化能力】Redis支持持久化,memcache也支持但一般不做持久化(重啟丟失數據)
(2)【數據類型支持】Redis類型較多(5種數據類型,string、list、hash、set、sorted set),memcache只能是字符串
(3)【線程模型】Redis是單線程+多路IO復用,雖然沒有鎖沖突,但很難利用多核特性提升整體吞吐量。memecache是多線程+鎖的方式,主線程監聽,work子線程接受請求,執行讀寫,有鎖沖突。;
(4)【數據庫特征】Redis不是所有的數據都存儲在內存,在很多方面具備數據庫的特征,memcache只是簡單的kv緩存;相當于memchache更像是redis在功能上的一個子集。
(5)【高可用支持】高可用(redis原生支持高可用功能,可以實現主從復制,哨兵模式,redis集群模式,而memcache要實現高可用,需要進行二次開發,例如客戶端的雙讀雙寫,或者服務端的集群同步)(延伸:雖然數據類型單一,但是memcache的內存管理機制導致無碎片,這讓memcache工作更加穩定,而redis本身也考慮到自己功能復雜,會產生碎片,并且容易崩潰,所以支持高可用)
(6)【內容大小比較】redis存儲的內容比較大(memcache的value存儲最大是1M,如果存儲value很大,只能選擇redis)
(7)【內存分配】memchache使用預分配內存池的方式管理內存,能夠省去內存分配的時間,這個節省的時間在數據量很大的時候還是很可觀的。而redis則是臨時申請空間,可能導致碎片。Redis和Memcache在寫入性能上面差別不大的,讀取性能上面尤其是批量讀取性能上面Memcache更強的。
總結
以上是生活随笔為你收集整理的redis存储数据类型_Redis与Memcahe的区别最全整理的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 主存和cache每一块相等_CPU中的C
- 下一篇: 计算机与生物的关系论文题目,生物论文