redis,memcache二者的區別是?(優缺點)


https://blog.csdn.net/u013474436/article/details/48632665

https://blog.csdn.net/chaoluo001/article/details/70740307

https://blog.csdn.net/buchengbugui/article/details/60869191

https://blog.csdn.net/zhangweiguangsunjiao/article/details/46659707

https://blog.csdn.net/buquan4041/article/details/52832552?fps=1&locationNum=5

Memcache和Redis區別:

  1. Redis中,並不是所有的數據都一直存儲在內存中的,這是和Memcache相比一個最大的區別。
  2. Redis在很多方面具備數據庫的特征,或者說就是一個數據庫系統,而Memcache只是簡單的K/V緩存。
  3. 他們的擴展都需要做集群;實現方式:master-slave、Hash。
  4. 在100k以上的數據中,Memcache性能要高於Redis。
  5. 如果要說內存使用效率,使用簡單的key-value存儲的話,Memcached的內存利用率更高,而如果Redis采用hash結構來做key-value存儲,由於其組合式的壓縮,其內存利用率會高於Memcache。當然,這和你的應用場景和數據特性有關。
  6. 如果你對數據持久化和數據同步有所要求,那么推薦你選擇Redis,因為這兩個特性Memcache都不具備。即使你只是希望在升級或者重啟系統后緩存數據不會丟失,選擇Redis也是明智的。
  7. Redis和Memcache在寫入性能上面差別不大,讀取性能上面尤其是批量讀取性能上面Memcache更強

共同點:Memcache,Redis 都是內存數據庫

 

區別:

 Memcache

   Memcache可以利用多核優勢,單實例吞吐量極高,可以達到幾十萬QPS,適用於最大程度扛量

    只支持簡單的key/value數據結構,不像Redis可以支持豐富的數據類型。

    無法進行持久化,數據不能備份,只能用於緩存使用,且重啟后數據全部丟失

 

 Redis

    支持多種數據結構,如string,list,dict,set,zset,hyperloglog

    單線程請求,所有命令串行執行,並發情況下不需要考慮數據一致性問題。

    支持持久化操作,可以進行aof及rdb數據持久化到磁盤,從而進行數據備份或數據恢復等操作,較好的防止數據丟失的手段。

    支持通過Replication進行數據復制,通過master-slave機制,可以實時進行數據的同步復制,支持多級復制和增量復制.

    支持pub/sub消息訂閱機制,可以用來進行消息訂閱與通知。

    支持簡單的事務需求,但業界使用場景很少,並不成熟


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM